Systems, methods, and apparatuses for managing configurable monitoring devices

ABSTRACT

Provided are embodiments of configurable monitoring devices, methods, systems, computer readable storage media and other means for locating devices. In some examples, the devices are attached to a retail or other type of article. The devices can be dynamically configurable and communicate wirelessly with other network entities.

CROSS REFERENCE TO RELATED APPLICATIONS

This patent application claims priority from U.S. Provisional PatentApplication No. 61/244,320, filed Sep. 21, 2009, entitled “AConfigurable Monitoring Device;” U.S. Provisional Patent Application No.61/246,393, filed Sep. 28, 2009, entitled “Systems, Methods andApparatuses for Managing Configurable Monitoring Devices;” U.S.Provisional Patent Application No. 61/246,388, filed Sep. 28, 2009,entitled “A Configurable Monitoring Device;” U.S. Provisional PatentApplication No. 61/248,223, filed Oct. 2, 2009, entitled “Employment ofa Configurable Monitoring Device as an Inventory Management Tool;” U.S.Provisional Patent Application No. 61/248,228, filed Oct. 2, 2009,entitled “Employment of a Configurable Monitoring Device as a MarketingTool;” U.S. Provisional Patent Application No. 61/248,242, filed Oct. 2,2009, entitled “Configurable Monitoring Device Having BridgeFunctionality;” U.S. Provisional Patent Application No. 61/248,233,filed Oct. 2, 2009, entitled “Employment of a Configurable MonitoringDevice as a Personal Identifier for Facilitating Transactions;” U.S.Provisional Patent Application No. 61/248,239, filed Oct. 2, 2009,entitled “Employment of a Configurable Monitoring Device as a SecurityTool;” U.S. Provisional Patent Application No. 61/248,269, filed Oct. 2,2009, entitled “Key for Commissioning, Decommissioning and UnlockingConfigurable Monitoring Devices;” and U.S. Provisional PatentApplication No. 61/248,196, filed Oct. 2, 2009, entitled “Systems,Methods and Apparatuses for Locating Configurable Monitoring Devices,”which are each hereby incorporated herein by reference in its entirety.

TECHNOLOGICAL FIELD

Embodiments of the present invention relate generally to network andnetwork management technology and, more particularly, relate to themanagement of networks that include dynamically configurable monitoringdevices for use in connection with monitoring, tracking, and locatingactivities associated with one or more articles such as retail products.

BACKGROUND

Conventional retail security systems, such as electronic articlesurveillance (EAS) systems, operate effectively to prevent shopliftingand the like. However, conventional systems are often limited to thenarrow scope of providing security functionality. For example, an EASgate located at an exit of a retail business establishment may beconfigured to alarm when an article with an EAS tag passes through thegate. Other than performing this important alarming functionality, manyconventional systems provide nothing more to the users of the systems,such as store owners, store managers, and the like. Additionally, whenstore owners are considering the purchase and installation of aconventional security system in a retail establishment, the limitedfunctionality offered by the systems can detrimentally affect thecost-benefit analysis of installing and maintaining the system.

Additionally, identifying the location of products within a retail storehas often relied on product placement. In other words, approaches tofinding products are often based on placing similar types of productsnear each other in the store, thereby allowing the products' relativeplacement to assist both customers and store personnel in finding adesired product. Another approach has been to use large signs above theaisles of products, which identify which types of products should be ineach aisle. However, using a sign and/or simply organizing a store withareas for similar products has proven insufficient under manycircumstances. As a result, customers and store personnel are demandingmore accuracy with respect to locating products within retail and otherenvironments.

BRIEF SUMMARY OF EXEMPLARY EMBODIMENTS

Some example embodiments of the present invention are therefore providedthat support security system functionality, as well as, additionalfunctionalities that would be beneficial to store owners, storemanagers, and customers. For example, some example embodiments supportinventory and marketing functionality, as well as, advanced securityfunctionality.

According to some example embodiments, a system is provided for managingand locating configurable monitoring devices and/or the products theyare attached to. A configurable monitoring device may be amicroprocessor-based wireless communication device that can assumeconfigurable roles or modes of operation within the system. A mode ofoperation may be implemented based on configuration information storedon the configurable monitoring device. The configuration information maybe pre-loaded on the configurable monitoring device, or configurablemonitoring devices may receive the configuration information via awireless connection from a remote device.

The system, referred to as a monitoring system, may include any numberof configurable monitoring devices configured to operate, for example,as a network, such as a mesh network, hybrid mesh network, star network,hybrid star network, or the like. The network may include a gateway nodethat supports a monitoring terminal (sometimes referred to herein as acoordinator). The gateway node may operate as an interface between theconfigurable monitoring device network and the monitoring terminal, forexample, via an external network. The monitoring terminal may beconfigured to interact with the configurable monitoring devices and theconfigurable monitoring device network to implement a variety offunctionalities.

Within the network, one or more of the monitoring devices can include aprocessor, which can be configured to receive an indication of atriggering event. In response to receiving the indication of thetriggering event the processor can be configured to cause the monitoringdevice to transition into a triggered role. The triggered role being oneof a tag role or a node role, among others. In some embodiments, the tagrole includes configuring the processor to determine locationinformation relating to the monitoring device. In other embodiments, thetag role can include, instead of or in addition to locally determininglocation information, configuring the processor to repeat, or relay, anyreceived data to a network entity, which can then help determine thelocation of the monitoring device. The location information can berelatively complex or simple (e.g., an identifier number of one or moreother nodes the monitoring device “hears”).

The monitoring device's node role can include configuring the processorto transmit a ping signal. A ping signal can comprise a relatively smallamount of data (e.g., only the node identifier information) or arelatively larger amount data (such as at least the amount and type ofdata common to “beacon” signals used in wireless communications, some ofwhich may be 802.11.4 compliant). The node role can also compriseconfiguring the processor to forward a tag communication to a networkentity.

Among other things, the monitoring device can be configured to receivedata that includes instructions to transition the monitoring device. Theinstructions can be included in the indication of the triggering eventand/or be sent by a network entity.

In some embodiments, the monitoring device's processor can be furtherconfigured to receive a second indication of a second triggering eventand, in response, transition from the triggered role to a secondtriggered role. For example, the monitoring device can transition from atag role, to a node role, back to a tag role. In some embodiments, theindication of the triggering event can be a wireless signal that isbroadcast wirelessly and received by one or more monitoring devices'antennas. Despite a plurality of monitoring devices receiving theindication, the indication of the triggering event can include amonitoring device identifier or other information that causes only oneof the monitoring devices to execute its transition into the triggeredrole. As another example, a directional antenna (which may allow onlyone monitoring device or a subset of the monitoring devices to receivethe indication), any other means, and/or a combination thereof can beused to target one or more monitoring devices for transitioning.

The indication of the triggering event can be, for example, an output ofa sensor. The sensor can be integrated inside the housing of themonitoring device, making the sensor an internal component of themonitoring device. Some examples of internal components include a motiondetector (e.g., jiggle switch, accelerometer, etc.), a tamper detectioncomponent (which can be separate from or part of a mounting device usedto affix the monitoring device to an article), or any other internalcomponent that could be integrated into the monitoring device, someadditional examples of which are discussed herein.

The sensor can be configured to detect the triggering event and outputthe indication of the triggering event. For example, the triggeringevent could be movement and, in response to the sensor determining thatthe monitoring device is moving, the sensor can output the indication tothe monitoring device's processor (and/or any other component ordevice).

In some embodiments, the sensor can be external to the monitoringdevice, such as, e.g., in an external device. The sensor can produce anoutput that is then relayed wirelessly or by any other means to themonitoring device. For example, the external device can be anotherdevice functioning as a node device. Other examples of external devicesthat can send the monitoring device the indication of a triggering eventinclude, e.g., an RFID device (such as those that are handheld ormounted in a counter or other piece of furniture), a network entity, anEAS gate, or any other device that can be configured to emit and/orgenerate an indication of a triggering event and/or an alarm event.

The monitoring device can also include an audio device configured toemit audio signals. In some embodiments, the audio device may only beoperable when the monitoring device is in the tag role. The monitoringdevice's processor can be further configured to receive an alarmindication of an alarm event while in the tag role and send a signal tothe audio device, causing the audio device to emit the audio signal. Analarm event can be similar to or a type of triggering event and an alarmindication can be similar to or a type of an indication of thetriggering event. For example, the alarm event can be an event, such asdetermining someone is trying to steal the article to which themonitoring device is attached (based on, e.g., suspicious movementprofile). The alarm indication, for example, can be any type ofindication, including a wireless or other type of signal thatcorresponds with an alarm event and/or can convey, to the monitoringdevice and/or network entity, that an alarm event occurred. For example,the monitoring device's processor and/or the network entity can receivethe alarm indication from an external security device, such as an EASgate and/or internal component that is configured to generate an outputin response to being in communication proximity with an EAS gate. Asanother example, a node can be placed near a store's exit and themonitoring device can be configured to interpret hearing that node'sping signal as an alarm indication (with the alarm event being thatmonitoring device being too close to the store's exit).

In some embodiments, the external security device can be a secondmonitoring device. The external security device can be in communicationproximity to the monitoring device and the external security deviceand/or the monitoring device can be affixed to a retail product. In suchembodiments, the external security device can be located at a store'sexit and be used to detect an alarm event.

As used herein, “communication proximity” refers to the distance inwhich direct communications can exist wirelessly between two devices.This distance can be dependent on a number of variables includes poweroutput, frequency, signal reception factors (including physical andelectrical interference variables), and/or any other variable. Forexample, if a monitoring device is in communication proximity of a nodedevice, the monitoring device can “hear” the node device's pingsignal(s) (e.g., receive the ping signal and determine the nodeidentifier).

In some embodiments, the monitoring device can comprise a battery and/orvarious other components. For example, the monitoring device cancomprise a mounting device configured to affix the monitoring device toa retail article. The monitoring device can also comprise memoryconfigured to store attribute information (e.g., bar code data, colordata, price data, etc.) associated with the retail article. As anotherexample, the monitoring device can include a display configured todisplay human-readable information and/or a light emitting component(which can be used to indicate battery power, an error message,communication functionality, etc.).

In some embodiments, the monitoring device can be configured forposition tracking of an article (such as a retail item, book, computer,casino chip, money, personal identification card, passport, etc.). Themonitoring device's processor can be configured to receive a ping signalfrom a ping node; determine location information relating to themonitoring device based at least in part on receiving the ping signal;and report the location information to a network entity. The networkentity can comprise one or more additional apparatuses, including aserver and network management and/or monitoring system.

In some embodiments, the monitoring device and/or network entity candetermine a location zone of the monitoring device in response to themonitoring device receiving a ping signal from the ping node or otherdevice functioning as a ping node (both of which are sometimes referredto herein as a “node device” or “node”). The monitoring device'sprocessor can then retrieve (e.g., request and receive), from local orremote memory, a zone-based functionality profile that corresponds withthe location zone. When the functionality profile is downloaded fromremote memory (such as, e.g., the memory of a network entity), theprocessor can be configured to store the functionality profile in themonitoring device's internal memory.

The functionality profile can be zone-based and correspond with one ormore zones that represent an area of a physical space, such as a retailstore or warehouse. The zones can also be relative to the position ofone or more other devices, such as a node device, door, etc.

The monitoring device can comprise an audible alarm that is activated bythe processor in response to the zone-based functionality profileincluding an event signal activation instruction, such as an alarmactivation instruction and/or any other instructions (such as, e.g., anunlocking instruction for the monitoring device's attachment mechanism,etc.). In some embodiments, an alarm may also be initiated at thenetwork entity in response to determining an alarm event has occurred.

The monitoring device's processor can be further configured to, inresponse to receiving the ping signal from the ping node, determine alocation zone. Determining a location zone can include, for example,determining the ping node's identifier which is broadcast as or encodedwithin the ping signal. In some embodiments, the network entity can beconfigured to determine the applicable zone-based functionality profilefor the monitoring device, in response to the monitoring devicerepeating the ping signal(s) the monitoring device received. Themonitoring device's processor can then retrieve, from the networkentity, the zone-based functionality profile that corresponds with themonitoring device's location zone.

The monitoring device and the ping node can establish and execute auni-directional communication protocol. The uni-directionalcommunication protocol can allow, for example, the ping node towirelessly broadcast data (as, e.g., a ping signal), which themonitoring device can receive. As mentioned elsewhere herein, the datacan include, e.g., the ping node's identifier and/or other information.While the monitoring device may or may not broadcast a response to theping node, the ping node can be configured to only send data to themonitoring device (e.g., lack the components necessary to receive datafrom the monitoring device). In some embodiments, the ping node canreceive data from a network entity, even though the ping node lacks theability to receive data from a monitoring device. In some embodiments,the monitoring device may be configured to respond to (e.g., confirmreceipt for) all ping node signals it receives. In other embodiments,the uni-directional communication protocol lacks the monitoring devicetransmitting data intended for the ping node.

The monitoring device can also establish and execute a bi-directionalcommunication protocol with the ping node and/or the network entity. Thebi-directional communication protocol can allow for two waycommunications, including sending and receiving of signals between eachdevice participating in the communication protocol.

The monitoring device can be further configured to receive a second pingsignal from a second ping node. The second ping signal can be used bythe monitoring device and/or network entity to determine second locationinformation (such as identifying information of the second ping node)relating to the monitoring device. The uni-directional, bi-direction orany other communication protocol can be established between themonitoring device and the second ping node. The communication protocolbetween the monitoring device and the second ping node can be related toor independent from the communication protocol used between themonitoring device and the first ping node.

A location zone can be determined by the monitoring device and/or thenetwork entity based on the first location information and the secondlocation information. The first and second location information canrespectively comprise the first ping node's and the second ping node'sidentification data. The network entity and/or the monitoring device,knowing where those ping nodes are physically located, can then derivethe approximate position of the monitoring device. In such embodiments,a more accurate location can be derived from, e.g., more ping nodeinformation. The location (relative to the ping node and/or absolute ina given space) can be used to access memory (remote or local to themonitoring device) and retrieve a zone-based functionality profile thatcan include instructions and other executable commands for themonitoring device and/or other device(s). For example, the monitoringdevice can comprise an audible alarm that is activated by the processorin response to receiving a type of event signal activation instruction(e.g., an alarm activation instruction) included in the zone-basedfunctionality profile. As another example, the monitoring device cancomprise a mounting device that is unlocked in response to thezone-based functionality profile including an unlock instruction,wherein the mounting device is configured to affix the monitoring deviceto a retail article. The monitoring device can also include an antennathat the processor uses to transmit and/or receive data associated withthe location zone to the network entity, ping node device, and/or anyother external device.

The monitoring device's processor can be further configured to engage aninternal timer; and subsequently receive an indication of a triggerevent, wherein the indication results from the timer expiring. In someembodiments, rather than engage a timer within the processor, any othertype of time keeping component can be implemented, including a clock,etc. In response to receiving the indication of the trigger event, themonitoring device can enter a wake mode and subsequent to reporting thelocation information to the network entity, reset the timer and enter asleep mode. In some embodiments, a timer can be started in response toreceiving a triggering event. A triggering event can cause the creationof a corresponding event signal, which can, among other things, causethe initiation of a timer.

In some embodiments, the monitoring device and/or network entity cansend a first signal for instructing the one or more ping nodes to powerdown to a minimum threshold and incrementally power up simultaneously ornear simultaneously. The monitoring device can then monitor (e.g.,listen) for subsequent ping signals from the ping nodes. Subsequent todetermining that both the first ping node and the second ping node havepowered down, the monitoring device can be configured to receive alocation signal from either of the ping nodes. In response to receivingthe location signal, the monitoring device can determine locally orutilize a network entity to determine its location and/or relate thatlocation information to an article to which the monitoring device iscoupled to. The location information, for example, can be associatedwith a first location corresponding with the location of a first pingnode if the location signal was generated by the first ping node. Or, asanother example, the location information can be associated with asecond location corresponding with the location of the second ping nodeif the location signal was generated by the second ping node. Afterusing one or more ping nodes to determine location information, themonitoring device can be configured to report the location informationto a network entity.

In other embodiments, the monitoring device and/or network entity canthen send a first signal for instructing the one or more ping nodes topower up to a maximum threshold and then simultaneously or nearsimultaneously incrementally power down. The monitoring device can thenmonitor (e.g., listen) for subsequent ping signals from the ping nodes.Subsequent to determining that both the first ping node and the secondping node have powered up, the monitoring device can be configured toreceive location signals. Subsequent to determining that both the firstping node and the second ping node have powered up, determining whethera final ping signal is received from the first ping node or the secondping node. In response to receiving the final ping signal, determiningthe location information relating to the article, wherein the locationinformation is associated with a first location of the first ping nodeif the final ping signal was generated by the first ping node or thelocation information is associated with a second location of the secondping node if the final ping signal was generated by the second pingnode. In other words, the monitoring device can determine its locationbased upon the last ping node it hears.

Some example embodiments of the present invention are therefore providedthat support locating a tag that may be affixed to a product within, forexample, a retail environment. In accordance with various exampleembodiments, the monitoring system may be implemented that is configuredto support the locating of tags. The monitoring system may be comprisedof a plurality of ping, gateway and/or other nodes that provide pingand/or other types of signals that are detected by a tag. A tag that isable to receive a signal from a ping and other nodes can be defined ashaving a positional relationship with the node(s). As mentioned aboveand detailed below, where the signal strength is sufficiently strong, atag may be configured to determine a closest ping node to the tag basedon the ability to receive a signal from a ping node.

In situations where a tag receives signals from a plurality of pingnodes (e.g., due to range overlap or signal reflections), a locatingprocedure may be undertaken to identify the ping node closest to the tagor within communication range with a tag. To implement the locatingprocedure, the ping nodes may be configured to, upon request, adjust thepings' respective signal powers to a common level (e.g., a minimum levelor a maximum level) and incrementally modify the power of the signal todetermine when a targeted tag begins receiving or communicating, orfails to receive or communicate, the signals being provided by the pingnodes. Based on which ping signal was first received or last lost, thetag may be configured to determine which ping node is closest to thetag. The tag may then be associated with the ping node such that the tagis indicated as being located near the ping node within the environment.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)

Having thus described the invention in general terms, reference will nowbe made to the accompanying drawings, which are not necessarily drawn toscale, and wherein:

FIG. 1 a is a schematic block diagram of a monitoring system including anumber of configurable monitoring devices according to exampleembodiments;

FIG. 1 b is another schematic block diagram of a monitoring systemincluding a number of configurable monitoring devices according to anexample embodiment of the present invention;

FIG. 1 c is another rendering of a monitoring system including a numberof configurable monitoring devices according to example embodiments;

FIG. 1 d illustrates a flow chart of an example tag according to exampleembodiments;

FIG. 2 illustrates a block diagram of a monitoring terminal according toexample embodiments;

FIG. 3 illustrates a diagram of various configurable monitoring devicesimplemented in an example retail environment according to exampleembodiments;

FIG. 4 illustrates an example configurable monitoring device withspecialized hardware for performing some of the functionality within therole of a key according to example embodiments;

FIG. 5 a is an illustration of an example retail environment having pingnodes and tags located within the environment according to exampleembodiments;

FIG. 5 b illustrates a tag information window for displaying attributeinformation for a tag according to example embodiments;

FIG. 6 is an illustration of a signaling and communications period for aping node according to example embodiments;

FIG. 7 is an illustration of a situation where a tag is within range ofmore than one ping node according to example embodiments;

FIG. 8 is an illustration of a example procedure where the signal powersof the ping nodes have been dropped to a minimum level and incrementallyincreased to perform locating according to example embodiments;

FIG. 9 is a flowchart of an example method for determining the locationof a tag from the perspective of a monitoring terminal or a tagaccording to example embodiments;

FIG. 10 is a flowchart of an example method for determining the locationof a tag from the perspective of a ping node according to exampleembodiments;

FIG. 11 illustrates an example of a flow diagram illustrating an examplemethod for managing configurable monitoring devices according to exampleembodiments;

FIG. 12 illustrates an example user interface window implemented by amonitoring terminal and depicting a representation of a monitoringsystem according to example embodiments;

FIG. 13 illustrates an example user interface window implemented by amonitoring terminal and depicting a representation of a monitoringsystem in accordance with some embodiments;

FIG. 14 illustrates an example of a flow diagram illustrating an examplemethod for managing configurable monitoring devices according to exampleembodiments;

FIG. 15 illustrates an example tag information window for displayingattribute information associated with a tag or node according to exampleembodiments;

FIG. 16 illustrates a hub information window for displaying attributeinformation for a node according to example embodiments; and

FIG. 17 illustrates a tag battery level window for displaying thebattery level for a tag according to example embodiments.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the invention are shown. Indeed,various embodiments of the invention may be embodied in many differentforms and should not be construed as limited to the embodiments setforth herein; rather, these embodiments are provided so that thisdisclosure will satisfy applicable legal requirements. Like referencenumerals refer to like elements throughout.

As defined herein a “computer-readable storage medium,” which refers toa physical storage medium (e.g., volatile or non-volatile memorydevice), can be differentiated from a “computer-readable transmissionmedium,” which refers to an electromagnetic signal. Additionally, asused herein, the term “circuitry” refers to not only hardware-onlycircuit implementations including analog and/or digital circuitry, butat least also to combinations of circuits with corresponding softwareand/or instructions stored on a computer-readable storage medium.

As indicated above, example embodiments of the present invention may beconfigured to support various security, inventory, marketing, and otherfunctionalities in, for example, a retail sales environment or othergiven space. To do so, configurable monitoring devices may be installedwithin the retail sales environment. A description of some exampleembodiments of configurable monitoring devices, and the monitoringsystems that may support configurable monitoring devices, is provided inU.S. Provisional Patent Application 61/244,320 filed Sep. 21, 2009,entitled “A Configurable Monitoring Device”, the content of which ishereby incorporated by reference in its entirety. The configurablemonitoring devices may be wireless communication devices that can bedynamically configured to assume one or transition among roles withinthe operation of a monitoring system. To facilitate the ability todynamically change roles, the configurable monitoring devices mayinclude a processor, memory, communications interface (e.g., radiotransmitter/receiver, Radio Frequency ID (RFID) module, or the like).Based on a role that a configurable monitoring device is expected toassume or transition to, the configurable monitoring device may alsoinclude more specialized hardware components such as, an alarm, asensor, a display, and the like.

As indicated above, the configurable monitoring devices may assume avariety of roles within the monitoring system. For example, aconfigurable monitoring device may be configured as a security tag thatis attached to an article via a mounting device. The security tag may beconfigured to alarm or transmit an alarm message, if the security tagdetermines that an alarm condition has been met. In another example, aconfigurable monitoring device may be configured to operate as a nodewithin a monitoring system. As a node, the configurable monitoringdevice may support communications and message routing within thecommunications network defined by the system. In this regard, the nodemay be configured to determine routing paths within the network for theefficient delivery of messages. According to another example, aconfigurable monitoring device may be configured to operate as a gatewaybetween the monitoring system and an external network such as a wiredlocal area network (LAN) or the Internet. Further, a configurablemonitoring device may be configured to operate as a security key forlocking and unlocking a mounting device associated with a security tag.In this regard, the security key may be configured to activate ordeactivate electronic security features of a security tag. For purposesof explanation, a configurable monitoring device configured to operatein node mode will be referred to as a “node”, a configurable monitoringdevice configured to operate in tag mode will be referred to as a “tag”,a configurable monitoring device configured to operate in gateway modewill be referred to as a “gateway”, and a configurable monitoring deviceconfigured to operate in key mode will be referred to as a “key”. U.S.Provisional Patent Application No. 61/248,269, filed Oct. 2, 2009,entitled “Key for Commissioning, Decommissioning and UnlockingConfigurable Monitoring Devices,” discusses examples of key devices andwas incorporated above by reference in its entirety.

The description of the roles of the configurable monitoring devicesdescribed above, and further described below is not an exhaustive listof the roles that may implemented by the configurable monitoringdevices. Additionally, while the various roles may be describedseparately, it is contemplated that the roles are not necessarilymutually exclusive (though they could be) and that a single configurablemonitoring device may or may not be configured to simultaneously assumemore than one of the roles.

FIG. 1 a illustrates an example monitoring system 60 that includes anumber of configurable monitoring devices in various roles. Tags 68(e.g., tags 68 a-68 i) may be configurable monitoring devices affixed toa product for the purpose of supporting security, inventory, marketing,as well as other functionalities. Nodes 66 (e.g., nodes 66 a-66 c) maybe configured to support network level activities such as communicationsrouting, tag locating, and the like.

Gateway node 64 may be configured as a gateway node to provide a networkinterface between the monitoring system 60 and the external network 30.A monitoring terminal 62 may be in communication with the gateway node64, for example, via the external network 30 or via a direct connectionto the gateway node 64, to facilitate management of the configurablemonitoring devices by the monitoring terminal 62 and to furtherfacilitate the aggregation and analysis of data received from theconfigurable monitoring devices. A gateway node may interface with acellular network to gain access to other networks, such as the Internet.In some example embodiments, a gateway node may support USB and Ethernetconnectivity for connection to USB or Ethernet networks.

The gateway node 64 may also include or be associated with a networkcoordinator. The network coordinator may be configured to oversee andmanage various network operations. For example, the network coordinatormay implement the forming of the network, allocate network addresses toentities of the network, and maintain a binding table for the network.

Although the communications network of the monitoring system may be anytype of network (e.g., mesh network, hybrid mesh network, star network,hybrid star network, any other type of network, or combination thereof),in some example embodiments, the network may be configured to performaspects similar to a mesh network. In some cases, the monitoring system60 may be made up of a plurality of communication devices (e.g., such asa plurality of configurable monitoring devices) in communication witheach other via device-to-device communication to form, for example, amesh network. However, in other situations, the network may include aplurality of devices that transmit signals to and receive signals from abase site or access point, which could be, for example a base site oraccess point of a data network, such as a local area network (LAN), ametropolitan area network (MAN), and/or a wide area network (WAN), suchas the Internet.

FIG. 1 b depicts another example network configuration in accordancewith some example embodiments, where the nodes 66 are connected in astar or cluster fashion to the gateway node. FIG. 1 c provides anotherillustration of an example monitoring system with a communicationsnetwork. With respect to the network entities of FIG. 1 c, the PANcoordinator (gateway with network management functionality), the poweredrouters (communications nodes), the gate alarm (gate node), the pings(pings nodes), the tags, and the manager's key may each include aconfigurable monitoring device configured for a particular role.

Other devices such as processing elements or devices (e.g., personalcomputers, server computers, displays, point of sale (POS) terminalsand/or the like) may be coupled to a configurable monitoring device toaccess the monitoring system 60. By directly or indirectly connectingthe configurable monitoring devices to various network devices and/or toother configurable monitoring devices via the monitoring system 60, theconfigurable monitoring devices may be enabled to receive configurationmodifications dynamically and perform various functions or tasks inconnection with network devices or other configurable monitoring devicesbased on the current configuration of the configurable monitoringdevices.

The configurable monitoring devices, and the monitoring system 60generally, may utilize any wireless communication technique forcommunicating information between the devices or to the monitoringterminal 62. For example, the configurable monitoring devices may beconfigured to support communications protocols built on the IEEE802.15.4 standard, such as Zigbee or a proprietary wireless protocol.According to some example embodiments, the communications within themonitoring system 60 may be performed based on a Route Under MAC (MediaAccess Control) (RUM) protocol or a modified RUM protocol. Regardless ofthe protocol, communications within the monitoring system may beassociated with a network identifier, such as a personal area network(PAN) identifier. In some example embodiments, configurable monitoringdevices might not be permitted to communicate within the monitoringsystem without having a matching network identifier. In some exampleembodiments, the monitoring system may regularly or irregularly changethe network identifier and transition to a new network identifier forsecurity purposes.

Additionally, to support network communications within the monitoringsystem, a system-wide synchronized clock may be implemented.Synchronization of the clock may be maintained via a clock signal.Configurable monitoring devices may include real time clock circuitry tosupport the synchronized clock and to regulate the use of precisecommunications windows.

The configurable monitoring devices may also support RFIDcommunications, such as communications based on Generation II Ultra HighFrequency (UHF) RFID standards. In example embodiments where aconfigurable monitoring device includes a radio (e.g., an IEEE 802.15.4radio) and an RFID module, the configurable monitoring device may beconfigured to operate as an interface that allows RFID devices to accessthe monitoring system 60. For example, an RFID reader or other RFIDdevice, that does not include a configurable monitoring device, maycommunicate with a configurable monitoring device, such as a tag, andthe configurable monitoring device may relay such communications toentities connected to the monitoring system. In the same manner, the tagmay relay communications originating on the monitoring system to an RFIDdevice that has interfaced with a tag. As such, the configurablemonitoring devices may operate as gateway to the monitoring system forRFID communications.

The monitoring system 60 may be configured to operate as a mesh network,hybrid mesh network, star network, hybrid star network, cluster treenetwork, any other type of network, or any combination thereof. In thisregard, the monitoring system 60 may support message hopping and networkself-healing. With respect to message hopping, the nodes 66 may beconfigured to receive communications from nearby or assigned tags 68.The nodes 66 may be configured to determine a system architecture and/orefficient pathways for communicating messages to the various entitieswithin the network. In this regard, the nodes 66 may be configured togenerate and maintain routing tables to facilitate the efficientcommunication of information within the network.

For example, in accordance with implemented marketing functionality, tag68 h may be configured to communicate that the product that tag 68 h isaffixed to has been moved or is being moved from its display location.Tag 68 h may be configured to communicate this information to tags 68 gand 68 d, because the products affixed to tags 68 g and 68 d are relatedproducts that a customer may be interested in purchasing, given tag 68h's determination that the customer may have decided to purchase theproduct affixed to tag 68 h. Accordingly, tag 68 h may generate andtransmit a message addressed to tags 68 g and 68 d. The message may bereceived by node 66 c, and node 66 c may be configured to determine howto route the message, given current network traffic, such that themessage is efficiently received by tags 68 g and 68 d. For example,using generated routing tables, node 66 c may determine that the messagecan first be transmitted directly to tag 68 g, since tag 68 g isconnected to or in direct communication with the node 66 c. To transmitthe message to tag 68 d, node 66 c may determine that the message shouldbe forwarded to node 66 b. Node 66 b may perform a similar analysis anddetermine that the message can be forward to tag 68 d, directly fromnode 66 b. Tag 68 h may also be configured to transmit the message tothe monitoring terminal 62. Node 66 c may route the message accordingly,such that the gateway 64 may forward the message to the monitoringterminal 62.

As indicated above, the nodes 66 may be configured to performcommunications routing within the monitoring system 60. In this regard,nodes 66 may operate to extend the range of the monitoring system.However, according to some example embodiments, all configurablemonitoring devices within the monitoring system 60 may be configured toperform routing functionality. As such, configurable monitoring devicesconfigured to operate both as tags and as nodes may communicate directlywith each other, if within range, without having to route thecommunications through another node.

Further, since the monitoring system 60 may be configured to supportself-healing. In this regard, in the event that a node 66 should failand no longer be able to communicate, messages may be automaticallyrouted via a path that does not involve the failed node. For example, ina given scenario, a tag may be connected (via, e.g., a wirelessconnection) to more than one node. In the event that one of the nodesfails, the tag may simply cause messages to be routed through anothernode to which the tag is connected. According to some exampleembodiments, such as in the event that another available node is notpresent, a tag may be triggered, directed, or otherwise configured toimplement node functionality (e.g., stored in the memory of the tag andimplemented by a processor of the tag). The tag may therefore become anode to support communications of other tags.

According to some example embodiments, configurable monitoring devicesthat are installed and configured with the intention that the devices beprimarily utilized as nodes may be powered through a building's wiredpower system or be mains powered (in contrast to being only batterypowered). Since nodes may be involved in the frequent transmission ofcommunications, power utilization of a node may be relatively high. Assuch, since configurable monitoring devices configured to operateprimarily as tags would likely be battery powered for mobility purposes,an example embodiment that implements node functionality within a tagmay be a temporary solution to maintain network continuity while thefailed node is repaired.

Additionally, the monitoring system 60 may be configured to compensatefor interference and multi-path conditions that can arise in enclosedenvironments, such as retail stores, individually or collectively (suchas, e.g., retail mall). To do so, the monitoring system 60 may beconfigured, for example by the monitoring terminal 62, to modify thesignal power of select nodes and tags to minimize interference. Otherexamples signal power instructions and adjustments are discussed below.According to some example embodiments, directional antennas may also beused by configurable monitoring devices to minimize interference.

According to various example embodiments, the monitoring system 60 maybe configured to interface with any number of other types of networksand/or systems. For example, the monitoring system 60 may interface withEAS systems, RFID systems, closed circuit television systems, inventorysystems, security systems, sales systems, shipping systems, point ofsale terminals, advertising systems, marketing compliance systems,ordering systems, restocking systems, virtual deactivation systems,Lojack® systems, and the like.

While the monitoring system 60 may be configured to operate in adistributed fashion, the monitoring terminal 62 may be configured tocoordinate operations of the monitoring system 60, as well as, retrieve,aggregate, and analyze data provided by the configurable monitoringdevices of the system.

Based on the foregoing, and in accordance with some example embodiments,the nodes may be configured to provide a wireless signal that may bereceived by tags that are within range. According to some exampleembodiments, the range of a node or the power level, used to generatethe wireless signal provided by the node, may be set based on the sizeof the area that the node is responsible for. For example, if the nodeis associated with a small floor display, the signal power may berelatively low. On the other hand, if a node is responsible for a largeshelf unit, the signal power may be set to a higher level to ensurecoverage of the entire shelf unit.

Tags may be configured to receive a signal that is provided by a nodeand respond to the node indicating that the tag is now associated withthe node, for example, because the tag is located on the floor displayassociated with the node. A tag may be configured to periodically orpseudo-randomly power up (e.g., based on a wake-up timer or othertrigger event), listen for a node signal (e.g., a ping node can beconfigured to broadcast a ping signal), perform a time synchronizationbased on the node's signal, and transmit a message to a network entityindicating which node the tag has received a signal from (based on,e.g., determining a node identifier embedded in the node's signal).Subsequently, a tag may perform a second clock synchronization with thenode or other network entity and then power down into a sleep mode foranother period of time or until another triggering event.

From the signal sent by the node, the tag may receive and determine aunique identifier and/or other data associated with the node. The tagmay store the identifier and/or other data in its local storagedevice(s). As such, the tag would know to which node the tag has beenassociated.

The tag and the node can establish and execute a uni-directionalcommunication protocol. The uni-direction communication protocol canallow, for example, the ping node to wirelessly broadcast data (as,e.g., a ping signal), which the tag can receive. As mentioned above, thedata can include, e.g., the ping node's identifier and/or other data.While the tag may or may not broadcast a response to the ping node, theping node can be configured to only send data to the tag (e.g., lack thecomponents or functionality necessary to receive or respond to data fromthe tag). In some embodiments, the ping node can receive data from anetwork entity (via, e.g., BlueTooth or WiFi), even though the ping nodelacks the ability to receive data from a tag or other monitoring device(via, e.g., another wireless protocol). In some embodiments, the tag maybe configured to respond to (e.g., confirm receipt for) all ping nodesignals it receives, even if the node may not act on the tag's response.In other embodiments, the uni-directional communication protocol lacksthe tag transmitting data intended for the ping node.

The tag can also establish and execute a bi-directional communicationprotocol with the ping node and/or any other the network entity. Thebi-directional communication protocol can allow for two waycommunications, including sending and receiving of signals between eachdevice participating in the communication protocol. As such, the nodemay receive communication signals from the tag including a uniqueidentifier of the tag, and the node may therefore know to which tag(s)the node is associated. The node may also be configured to report thenode/tag associations back to a monitoring terminal, monitoring systemcoordinator, and/or other network entity. Via these and other types ofdefined tag/node relationships, various functionalities, as mentionedabove and otherwise herein, may be implemented.

Additionally, as further described herein, a tag may include a jiggleswitch and/or other motion detection component, the actuation of whichmay indicate that a tag is being moved. Upon detecting actuation of thejiggle switch, the tag may determine a trigger event has occurred and,in response, may move from a sleep state into an awake state. Uponentering the awake state, the tag may perform one or more clocksynchronizations with a node and determine the identifier of the node towhich the tag is currently connected. In some embodiments, the tag mayalso transmit a message indicating the identifier of the node to whichthe tag is currently connected (possibly a new node since movement mayhave occurred). In the event that a tag does not detect a node, the tagmay generate location information, representing the fact that the tag isout of range of any node, and access its functionality profile (whichmay be saved on the tag and/or on a network entity). In someembodiments, the functionality profile can include an alarm instruction,which causes the tag to alarm, should the tag determine it is out ofrange of any node. A tag that has detected a node may engage a movementwait timer to facilitate determining whether further movement of the tagis occurring. In the event that further movement is detected during themovement wait time, the tag may attempt to detect a node and againperform a time synchronization. If the movement wait time expires, thetag may determine a time until a next wake up into the awake state andan associated wake-up timer may be reset. Upon beginning the wake-uptimer the tag may transfer into a sleep state. FIG. 1 d illustrates aflow chart of the operation of an example tag consistent with thatdescribed above.

FIG. 2 illustrates basic block diagram of a monitoring terminal 62according to an exemplary embodiment. As shown in FIG. 2, the monitoringterminal 62 may include various components that support both the basicoperation of the monitoring terminal 62 and the relatively moresophisticated operation of the monitoring terminal 62 as a coordinatorof a monitoring system. Some examples of these components are shown inFIG. 2. However, it should be appreciated that some example embodimentsmay include either more or less than the example components illustratedin FIG. 2. Thus, the example embodiment of FIG. 2 is provided by way ofexample and not by way of limitation.

Reference will now be made to FIG. 2 to describe an example structureand functional operation of the monitoring terminal 62 according to anexemplary embodiment. In this regard, as shown in FIG. 2, the monitoringterminal 62 may include a processor 250 and a communication interface252. In some example embodiments, the monitoring terminal 62 may includea user interface 258. The processor 250 may in turn communicate with,control or embody (e.g., via operation in accordance with correspondinginstructions) a monitoring system manager 256.

In an exemplary embodiment, the processor 250 may be configured to, forexample, execute stored instructions (in a, e.g., functionality profile)and/or operate in accordance with programmed instructions to control theoperation of the monitoring terminal 62. The processor 250 may beembodied in a number of different ways. For example, the processor 250may be embodied as one or more of various processing means or devicessuch as a coprocessor, a microprocessor, a controller, a digital signalprocessor (DSP), a processing element with or without an accompanyingDSP, or various other processing devices including integrated circuitssuch as, for example, an ASIC (application specific integrated circuit),an FPGA (field programmable gate array), a microcontroller unit (MCU), ahardware accelerator, a special-purpose computer chip, or the like. Inan exemplary embodiment, the processor 250 may be configured to executeinstructions stored in a memory device (e.g., memory device 254 of FIG.2) or otherwise accessible to the processor 250. The instructions may bepermanent (e.g., firmware) or modifiable (e.g., software) instructionsand be organized in any manner (such as one or more functionalityprofiles). Alternatively or additionally, the processor 250 may beconfigured to execute hard coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor 250 may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to embodiments ofthe present invention while configured accordingly. Thus, for example,when the processor 250 is embodied as an ASIC, FPGA or the like, theprocessor 250 may be specifically configured hardware for conducting theoperations described herein. Alternatively, as another example, when theprocessor 250 is embodied as an executor of software or firmwareinstructions, the instructions may specifically configure the processor250 to perform the algorithms and/or operations described herein whenthe instructions are executed. The processor 250 may include, amongother things, a clock, an arithmetic logic unit (ALU) and logic gatesconfigured to support operation of the processor 250.

The memory device 254 may include, for example, one or more volatileand/or non-volatile memories. In other words, for example, the memorydevice 254 may be an electronic storage device (e.g., acomputer-readable storage medium) comprising gates (e.g., logic gates)configured to store data (e.g., bits) that may be retrievable by amachine (e.g., a computing device including a processor such asprocessor 250). The memory device 254 may be configured to storeinformation, data, applications, instructions or the like for enablingthe monitoring terminal 62 to carry out various functions in accordancewith exemplary embodiments of the present invention. For example, thememory device 254 could be configured to buffer input data forprocessing by the processor 250. Additionally or alternatively, thememory device 254 could be configured to store instructions forexecution by the processor 250.

The user interface 258 may be in communication with the processor 250 toreceive user input via the user interface 258 and/or to present outputto a user as, for example, audible, visual, mechanical or other outputindications. The user interface 258 may include, for example, akeyboard, a mouse, a joystick, a display (e.g., a touch screen display),a microphone, a speaker, or other input/output mechanisms. Further, theprocessor 250 may comprise, or be in communication with, user interfacecircuitry configured to control at least some functions of one or moreelements of the user interface. The processor 250 and/or user interfacecircuitry may be configured to control one or more functions of one ormore elements of the user interface through computer programinstructions (e.g., software and/or firmware) stored on a memoryaccessible to the processor 250 (e.g., volatile memory, non-volatilememory, and/or the like). In some example embodiments, the userinterface circuitry is configured to facilitate user control of at leastsome functions of the monitoring terminal 62 through the use of adisplay configured to respond to user inputs. The processor 250 may alsocomprise, or be in communication with, display circuitry configured todisplay at least a portion of a user interface, the display and thedisplay circuitry configured to facilitate user control of at least somefunctions of the monitoring terminal 258.

The communication interface 252 may be any means such as a device orcircuitry embodied in either hardware, software, or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network and/or any other device or module in communicationwith the monitoring terminal 62. According to some example embodimentswhere the monitoring terminal 62 is directly connected to the monitoringsystem, the communications interface 252 may include an appropriatelyconfigured configurable monitoring device. Further, the communicationinterface 252 may include, for example, an antenna (or multipleantennas) and supporting hardware and/or software for enablingcommunications with a wireless communication network 30 or other devices(e.g., other configurable monitoring devices). In some environments, thecommunication interface 252 may alternatively or additionally supportwired communication. As such, for example, the communication interface252 may include a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB) or other mechanisms.

In an exemplary embodiment, the communication interface 252 may supportcommunication via one or more different communication protocols ormethods. In some embodiments, the communication interface 252 may beconfigured to support relatively low power, low data rate communication.As such, for example, a low power and short range communication radio(e.g., radio transmitter/receiver) may be included in the communicationinterface 252. In some examples, the radio transmitter/receiver mayinclude a transmitter and corresponding receiver configured to supportradio frequency (RF) communication in accordance with an IEEE (Instituteof Electrical and Electronics Engineers) communication standard such asIEEE 802.15. As such, for example, some embodiments may employBluetooth, Wibree, ultra-wideband (UWB), WirelessHART, MiWi or othercommunication standards employing relatively short range wirelesscommunication in a network such as a wireless personal area network(WPAN). In some cases, IEEE 802.15.4 based communication techniques suchas ZigBee or other low power, short range communication protocols suchas a proprietary technique based on IEEE 802.15.4 may be employed.

In an exemplary embodiment, the communication interface 252 mayadditionally or alternatively be configured to support communication viaradio frequency identification (RFID) or other short range communicationtechniques. Accordingly, the monitoring terminal 62 may be configured tointerface configurable monitoring devices, in addition to conventionalRFID tags and modules. In another embodiment, the monitoring terminal 62may be configured to interface a barcode scanner, or other data entrydevices.

As mentioned above, monitoring terminal 62 may be directly connected tothe monitoring system via a configurable monitoring device configured asa gateway, or the monitoring terminal 62 may be connected to themonitoring system 60 via a gateway and an external network 30. Thenetwork 30 to which the communication interface 252 may connect may be alocal network (e.g., a WPAN) that may in some cases further connect toor otherwise communicate with a remote network on either a periodic orcontinuous basis. The network 30 may include a collection of variousdifferent nodes, devices or functions that may be in communication witheach other via corresponding wired and/or wireless interfaces.

As indicated above, the processor 250 of the monitoring terminal 62 maybe embodied as, include or otherwise control the monitoring systemmanager 256. The monitoring system manager 256 may be any means such asa device or circuitry operating in accordance with firmware/software orotherwise embodied in hardware or a combination of hardware andfirmware/software (e.g., processor 250 operating under software control,the processor 250 embodied as an ASIC or FPGA specifically configured toperform the operations described herein, or a combination thereof)thereby configuring the device or circuitry to perform the correspondingfunctions of the monitoring system manager 256, as described herein.Thus, in examples in which software is employed, a device or circuitry(e.g., the processor 250 in one example) executing the software formsthe structure associated with such means.

The monitoring system manager 256 of the monitoring terminal may beconfigured to coordinate, manage, and configure the operation ofconfigurable monitoring devices. In this regard, the monitoring systemmanager 256 may be configured to perform a number of activities withregard to a monitoring system as further described below and otherwiseherein. While the monitoring system manager 256 may be configured toperform all of the functionality described with respect to themonitoring system manager 256 herein, it is also contemplated that themonitoring system manager 256 could be configured to perform any sub-setof the described functionality.

According to some example embodiments, the monitoring system manager 256may be configured to define, assign, and manage the role configurationof the configurable monitoring devices. To do so, the monitoring systemmanager 256 may generate configuration information that indicates therole or mode of operation for a target configurable monitoring deviceand transmits the configuration information to the configurablemonitoring device for storage on the device. Configurable monitoringdevices may each be assigned a unique identifier that may be used forcommunication message addressing. As such, configuration information maybe generated by the monitoring system manager 256 and addressed to atarget configurable monitoring device to configure the configurablemonitoring device for a particular role.

The configuration information may include role policy information thatindicates the functionality that the configurable monitoring deviceshould perform within the device's assigned role, and attributeinformation, such as associated product attributes. Attributeinformation may be data that a configurable monitoring device mayutilize within the role to perform functionality. For example, if aproduct that the configurable monitoring device is attached to isclothing, the attribute information may include a clothingclassification (e.g., shirt, pants, tie, dress, etc.), a color or colorsindicator, a size indicator, a price indicator, a lot indicator, and/orthe like. Based on the attribute information, the functionalityperformed by a configurable monitoring device may be determined. Forexample, configurable monitoring devices configured with the same rolepolicy information, may trigger different types of alarm responses basedon the price of the product. According to some example embodiments,attribute information may be stored in a central location, rather thanat the configurable monitoring device, and the configurable monitoringdevices may access this information remotely via the network of themonitoring system as needed.

According to some example embodiments, the configuration information mayinclude executable code that is, possibly decompressed, and stored onthe configurable monitoring device for subsequent execution by theconfigurable monitoring device. However, in some example embodiments, aconfigurable monitoring device may be manufactured with executable codein the form of configuration information stored within the memory of thedevice. Alternatively, a hardware device, such as a memory device orpreconfigured processing device with pre-stored configurationinformation may be inserted into and/or electrically connected to theconfigurable monitoring device to provide configuration information andassign a role to the configurable monitoring device. The pre-storedconfiguration information may be directed to a number of possible rolesthat the configurable monitoring device could be configured to perform.In this regard, to configure the configurable monitoring device, themonitoring system manager 256 may provide a message including a dataindicator of which role the configurable monitoring device is toperform. The configurable monitoring device may receive the indicatorand begin performing (e.g., transition into) the role described by theindicator by executing the appropriate portion of the pre-storedconfiguration information.

Once a configurable monitoring device is assigned a role via theconfiguration information, the device may begin operating within itsrespective role. Roles or configurations may be simple or complex basedon, for example, the processing capabilities and the memory storageavailable to a configurable monitoring device. In this regard, aconfigurable monitoring device may be configured to perform minimal dataprocessing, and a monitoring terminal may be configured to performincrementally more processing of data. Alternatively, some configurablemonitoring devices may include relatively higher processing power andlarger memory storage to support increased data processing at theconfigurable monitoring device, rather than at the monitoring terminal.

For example, in embodiments where a configurable monitoring deviceincludes minimal storage memory, attribute information describing thearticle to which a configurable monitoring device is attached may bestored at the monitoring terminal. When a inquiry device (e.g., pricescanner, inventory scanner) requests the attribute information from thetag, the tag may communicate the request to the monitoring terminal, andthe monitoring terminal may provide the attribute information to theinquiry device, either though the monitoring device or through aconnection external to the monitoring device.

Alternatively, in embodiments where the configurable monitoring deviceincludes a relatively large storage memory, attribute informationdescribing the article to which a configurable monitoring device isaffixed may be stored, e.g., local to the tag, within the storage memoryof the tag. When an inquiry device (e.g., price scanner, inventoryscanner) requests the attribute information from the tag, the tag maydirectly communicate, or initiate the communication of, the attributeinformation from the tag to the inquiry device.

The following describes some of the roles that may be implemented by theconfigurable monitoring devices and the interactions that may involvethe monitoring terminal 62 and the monitoring system manager 256 whilethe configurable monitoring devices are operating within their roles. Asdescribed above, and generally herein, a configurable monitoring devicemay include a processor and a memory. The processor may be configured tosupport network communications. According to various exampleembodiments, the processor may be configured, for example, viainstructions stored on the memory (e.g., instructions derived fromconfiguration information), to support communications in accordance witha role defined by configuration information. Further, the processor ofthe configurable monitoring device may include input/output (I/O) ports(or pins). Via configuration information, the I/O ports may beconfigured to interface with any number of external devices such as,electronic security devices, merchandising displays, tags on equipment,employee identification cards, alarms, speakers, microphones, lights(e.g., light emitting diodes (LEDs)), buttons, keypads, monitors,displays (e.g., for changeable pricing labels), sensors (e.g.,accelerometers, movement sensors, light sensors, temperature sensors),cameras, security gates, store audio systems, customer counters,lighting switches, employee communicators (e.g., headsets, handheldradios), door strike mats, jewelry case mats, Lojack® devices, globalpositioning system (GPS) devices, and the like. As such, the I/O portsmay be configured to support one or more roles that the configurablemonitoring device may be configured to perform.

Via the I/O ports of the processor, various functionalities may betriggered, based on the role and the configuration information of theconfigurable monitoring device. Following from the discussion above,triggering may be initiated either at the configurable monitoring devicelevel or at the monitoring terminal level. For example, the I/O ports ofa configurable monitoring device's processor may interface with adisplay for a price tag, when the configurable monitoring device isconfigured as a tag. Within the tag's configured role, for example, theprice depicted on the display may be set to reduce at a given time. Insome example embodiments, the time may monitored by the processor of thetag and when the given time is reached, the processor may direct the I/Oports and the connected display to depict a reduced price.Alternatively, an example that includes triggering at the monitoringterminal level may include the time being monitored by the monitoringterminal, and the monitoring terminal may communicate a messageincluding a reduced price, or an indication to reduce the price, to thetag at the given time to trigger the tag to reduce the priceaccordingly. Further, the I/O ports may interface with a camera, and theconfigurable monitoring device may be configured to control the movementof the camera, detect events, and capture still camera pictures forforwarding to store personnel or the authorities, and the like.

While the roles described herein may be considered from the perspectiveof an implementation in a retail sales environment, the scope of theinvention should not be limited to such implementations. For ease ofunderstanding, FIG. 3, which illustrates an example of a given space,namely retail environment 100, is referred to in order to describe someof the roles that may be implemented by the configurable monitoringdevices within an exemplary monitoring system.

FIG. 3 illustrates a diagram of various configurable monitoring devicesconfigured to define a monitoring system. In this regard, FIG. 3 depictsan exemplary retail environment 100 including a stock room 110 whereexcess inventory is maintained, an office space 120 from whichmonitoring activity may be coordinated or otherwise viewed (e.g., via amonitoring terminal 62), fitting rooms 130 in which articles of clothingmay be tried on by potential buyers, a retail floor 140 on which variousproducts may be displayed or otherwise made available for buyers topurchase and restrooms 150. FIG. 3 also depicts a point of sale (POS)terminal 160 at which payment may be made for products and a door 170through which customers may enter and exit the retail floor 140.

Within a retail environment application, various different products mayeach be provided with a corresponding configurable monitoring deviceoperating as a tag. Furthermore, several other configurable monitoringdevices may be provided at various locations throughout the retailenvironment to operate, for example, as nodes. In this regard, thelocation of a node within the retail environment may be known (e.g.,coordinates of the nodes may be known) to, for example, the monitoringterminal 62 and the monitoring system manager 256 to facilitateimplementation of a real-time location system (RTLS) for the tags viathe nodes. Several configurable monitoring devices operating in a tagmode are illustrated in FIG. 3 as circles with the letter “T” therein.Some other configurable monitoring devices may be configured duringcommissioning to operate in a node mode. Examples of configurablemonitoring devices operating in node mode are shown in FIG. 3 as circleswith the letter “N” therein. An example of a configurable monitoringdevice operating in a gateway mode is shown in FIG. 3 as a circle withthe letter “G” therein. The circles with the letter “C” may beconfigurable monitoring devices configured to operate with customercounting devices (e.g., strike pads, and the like). The circles with theletter “D” may be configurable monitoring devices configured to operatewith door opening monitoring devices configured to determine and reporta number of times customers open, for example a freezer door in groceryfrozen food section. The circle with the letter “P” may be configurablemonitoring devices configured to operate with a camera to capturedigital photographs when an event, such as the alarming of a tag hasoccurred. The configurable monitoring device interfacing with the cameramay be configured to control the movement of the camera and forwardvideo or pictures. Still others (or a single configurable monitoringdevice) may be configured to operate as gates or in a hub or gatewaymode. While configurable monitoring devices may be configured as tags,nodes, gateways, etc., each of these roles may be further refined, forexample via configuration information, to specialize the functionalityof a configurable monitoring device within a particular role (such as,e.g., a ping node within the broader node role).

Various techniques may be utilized to associate and dissociate aconfigurable monitoring device. For example, a specific networkidentifier (e.g., PAN ID) may be provided to the configurable monitoringdevice at manufacturing. Further, low transmission power association anddissociation may be implemented using close proximity signaling.Further, hardware, switches (e.g., DIP (dual in-line package) switches),jumpers, MAC address filtering, button actuatedassociation/dissociation, separate communications linkassociating/dissociating, or a barcode scanners may be used forassociated or dissociated.

A configurable monitoring device configured to operate as a tag mayperform functionalities supporting security functions, inventoryfunctions, marketing functions, combinations thereof, and the like. Inthis regard, subsequent to configuring a configurable monitoring deviceas a tag, a commissioning or binding procedure may be performed. Priorto commissioning, a configurable monitoring device may be configured asa tag, but the device may not yet be associated with, or attached to, aproduct. Upon associating the tag with a product, the tag may becommissioned. The monitoring terminal 62 and the monitoring systemmanager 256 may manage the commissioning and decommissioning of tags viawireless communications with the tags. For example, the procedure forcommissioning and decommissioning a tag may include RFID scanning thetag, a barcode scanning the tag, and/or hardware (e.g., specializedmicrochip) attachment or connection.

To commission a tag, the monitoring system manager 256 may provide asignal to the tag indicating that the tag is now active with respect toits configured role. In this regard, alarming, inventory, and marketingfunctionality may be downloaded and/or activated. For example, afunctionality profile, including various electronic instructions, may bedownloaded and/or activated. While commissioned, the tag may continue toreceive instructions or other information useful for makingdeterminations as to the functionality to be employed and thecorresponding role/mode of operation to assume.

Decommissioning of the tag may include powering down the tag, clearingor resetting data (e.g., product-specific and/or functional data),and/or directing the tag to enter an idle or non-transmitting mode inorder to conserve battery power until the tag is re-commissioned. Thetag may be decommissioned by instructions and/or signals received fromthe monitoring terminal 62 and the monitoring system manager 256.

Decommissioning may occur at a point of sale, such as POS 160. A nodeassociated with the point of sale (POS node) may be configured, viaconfiguration information, to perform decommissioning functionality. Inthis regard, the POS node may be configured to decommission the tag whenthe product is entered into a sales transaction. The monitoring systemmanager 256 may be configured to interface with a sales database or salesystem to monitor transactions. Upon detecting a transaction, data aboutthe product involved in the transaction may be acquired, and, based onthe acquired data, a decommission signal may be transmitted to theaffected tag. According to some example embodiments, direct access to asales database or sales system may not be available due to concernsregarding the confidentiality of sales and customer information. Inthese situations, example embodiments of the present invention mayimplement a barcode scanning wedge as an interface to the transactionactivities without accessing the sales database or sales system.

According to some example embodiments, a battery check may be performedby a tag during decommissioning. In this regard, the configurablemonitoring device may include the hardware and software (e.g., processorconfigured by instructions) to provide for monitoring the battery chargelevel. If the battery charge level for a tag has fallen below a giventhreshold, the tag may alarm or otherwise indicate to the storepersonnel that the tag should be removed from service for recharging orbattery replacement. Tags that have battery levels above the giventhreshold may be decommissioned and identified as being available forre-commissioning. According to some example embodiments, a tag having abattery level that has fallen below a given threshold may be preventedfrom being re-commissioned until the battery charge level issufficiently improved. This would also desirably limit the need for astore clerk to retrieve low battery tags from the field or storeenvironment.

The barcode scanning wedge may be installed in-line between a barcodescanner and a point of sale checkout terminal for receiving dataacquired by the barcode scanner. The wedge may be configured tointercept some or all data acquired by the barcode scanner and toprovide the data to a monitoring system, for example, via a POS node,without otherwise interrupting the flow of data to the point of saleterminal.

The wedge may be configured to facilitate the commissioning ordecommissioning of a communications tag that is part of a monitoringsystem. For example, when a cashier scans a barcode of a product duringa purchase transaction, data confirming the transaction may be uploadedto the monitoring system and the monitoring system manager 256 via thewedge. Confidential consumer and sales information may not be uploadedto the retail security network in some embodiments. In response toreceiving a sales confirmation, the monitoring system manager 256 may beconfigured to transmit a decommission signal to an associated tagattached to the purchased product to cause the tag to be decommissioned.Decommissioning may be associated with removal of the tag from theproduct and/or removal or modification of a record or information (e.g.,inventory information) for the tag stored by the monitoring systemmanager 256, for example, in the memory device 254.

A configurable monitoring device may also be configured as a manager'skey to be implemented within the monitoring system. FIG. 4 a depicts anexample block diagram of a key, such as manager's key. The key of FIG. 4a is depicted as using the Zigbee protocol, but any protocol may beused. In some applications, a mounting device that mechanically attachesthe configurable monitoring device to a product may be unlockable by theimplementation of a key. According to some exemplary embodiments, a taghaving a mounting device may take the form of a pin tag (for protectinga clothing), a keeper or plastic enclosure (for protecting compactdisks, software, cologne, and the like), a Spider Wrap™ or wire wrapdevice (for protecting larger boxed products), or the like. One suchmounting device may be configured to attach to the shaft of a golf clubor similar article such as the device disclosed in U.S. Pat. No.7,266,979 herein incorporated by reference in its entirety. Other suchmounting devices may be configured to attach to a bottle neck or abottle cap such as the devices disclosed in U.S. Pat. Nos. 7,259,674 and7,007,523, both herein incorporated by reference in their entirety.Still other mounting devices may be configured to attach through aproduct such as an article of clothing or a blister pack such as thehard-tag disclosed in U.S. Pat. No. 6,920,769 incorporated herein byreference in its entirety. Each of the aforementioned patents beingcommonly owned by the assignee of the present application.

As mentioned above, Alpha Security Products' Spider Wrap™, which isdisclosed in U.S. Pat. No. 7,162,899 and herein incorporated byreference in its entirety, may also be configured to operate as amounting device. Further, a cable lock, such as the Alpha SecurityProducts' Cablelok™ device disclosed in U.S. Pat. No. 7,249,401 or akeeper, such as that disclosed in U.S. Pat. No. 6,832,498 may be amounting device. Each of the aforementioned patents being commonly ownedby the assignee of the present application and herein incorporated byreference in their entirety.

The key may be embodied in many different ways. In this regard, in somesituations, the key may be a specially formed device that matesmechanically with some portion of the mounting device in order todisable a locking mechanism of the mounting device. As an alternative,the key may be a magnetic device configured to interface with a lockingmechanism of the mounting device to enable the mounting device to beunlocked to permit removal of the mounting device from the correspondingproduct to which the mounting device is affixed or otherwise attached.As yet another alternative, the key may actually include an electricalcomponent for exchanging signals or information with the tag associatedwith the mounting device to enable unlocking of the mounting device. Assuch, for example, the key could be an embodiment of a configurablemonitoring device that is provided with specific configurationinformation defining functionality for the configurable monitoringdevice to function as the key for unlocking the mounting devices oftags. In such implementations, the key (or the configuration informationassociated with the key) may include a software component or code thatis unique to a particular individual (e.g., a specific manager orassistant manager).

The key may also report unlocking activities and/or other informationregarding other devices encountered or activities undertaken tomonitoring system manager 256, so that activity of the key (or personspossessing the key) may be monitored, logged, and/or tracked. Theexamples discussed below, in connection with locating a tag or networkcomponent, could be applied to the managers key as well. Additionally,authenticity of the code may be defined or verified so that, forexample, if a particular manager's key is lost or a manager leaves, thecorresponding code for the manager's key may be invalidated so thatfurther unlocking operations with the manager's key may not be possible.With respect to the security of the key itself, the key may beconfigured to alarm and/or destroy necessary aspects of the key'sfunctionality if the key is, for example, improperly removed from theretail environment. For example, the key may clear the memory of thekey, rendering the key useless.

Utilization of the key for unlocking security devices may be limited byrules stored on the key or at a monitoring terminal. For example, rulesfor using the key may be defined with respect to the location of the key(e.g., inside/outside the store, inside/outside a department zone), theemployee using the key (e.g., as indicated by a passcode or detection ofa user's RFID tag), a time of day, a day of the week, a work schedule.Use of the key in violation of the rules may cause the key to alarm.

In addition to, or as an alternative to unlocking mounting devices, thekey may be useful for setting an alarm or turning an alarm on or off. Inthis regard, to utilize the key, a button on the key may be actuatedwhich indicates that the key is preparing to or is performing a lockingor unlocking function. An indication that the button has been pressedmay be commutated to the tag that is to be interacted with or themonitoring terminal. Further, in consideration of the locatingfunctionality described below, the key may be located and tracked, andzones of use (e.g., the key cannot be used in the stock room 110) andother rules may be defined and enforced with respect to the key.

According to some example embodiments, a configurable monitoring deviceconfigured as a tag, whether commissioned or decommissioned, may providea status signal (or heartbeat signal) to the monitoring system. Thestatus signal may be a short transmission of a unique identifierassociated with the tag. The status signal may also provide other typesof indications, such as whether the battery is or is not yet drainedand/or whether the tag is otherwise properly functioning. The statussignal may also be used for real time locationing system (“RTLS”)purposes, some examples of which are further described below. The statussignal may be received by the monitoring system manager 256. Themonitoring system manager 256 and/or the tag may maintain a log of themost recent receipt of a status signal from a tag and/or node. Othertypes of logs, some of which are discussed below, can also be maintainedfor and/or by one or more of the configurable monitoring devices. If thetag fails to provide a status signal that is received by the monitoringmanager and/or any other network entity within a threshold period oftime, an alarm or error indication may be generated.

According to some example embodiments, nodes of the monitoring systemmay be configured to provide ping signals. The tags may be configured toreceive a ping signal and communicate information in response to receiptof a ping signal. For example, battery status, alarm status, receivedsignal strength, and the like may be provided in response to a pingsignal.

As alluded to above, within the role of a tag various functionalitiesmay be implemented, such as advanced security functionalities. Forexample, complex alarming conditions may be defined for a tag based ondata received from sensors on the tag, location information, movementinformation, and the like. For example, tags may be configured tooperate as or with EAS tags, such that when the tag passes through anEAS gate, the EAS gate may detect the tag (or a connected EAS tag), andpossibly sound an alarm. According to some example embodiments, themonitoring terminal 62 may have received a communication regarding thealarm condition.

With regard to operation within EAS systems, configurable monitoringdevices may be configured to operate as tags to be detected, or as gatenodes for detecting tags. In this regard, via configuration informationprovided to a configurable monitoring device, the configurablemonitoring device may assume the role of a gate node, such as gate nodes180 located at the doorway 170. The gate nodes may be configured todetect passing EAS tags, such as a conventional EAS tag or aconfigurable monitoring device configured to operate as an EAS tag, andsound an alarm (e.g., an alarm included on the tag, an alarm includedwith the gate node, a storewide alarm). A gate node may directly sound alocal alarm, or the gate node may communicate with the monitoring systemmanager 256 to sound an alarm.

It is noteworthy that, due to the dynamic reconfiguration ability ofconfigurable monitoring devices, any configurable monitoring device maybe configured to operate as a gate node. As such, EAS gates may beimplemented dynamically at many locations within a retail environment.For example, configurable monitoring devices that have been configuredto operate as tags and are affixed to a product on a shelf within theretail environment may also be re-configured to operate as a gate nodefor the aisle where the products are located.

In addition to performing EAS functionality, a monitoring system may beconfigured to perform additional advanced security functionality. Someadvanced security features, as well as a number of other inventory,marketing, and other features may rely upon implementation of an RTLSwithin a monitoring system. To implement RTLS solutions, configurablemonitoring devices may be configured as locating nodes.

According to some example embodiments, the ping signals generated by thenodes may be used for locating a tag. In this regard, a tag may beconfigured to report to, for example, the monitoring terminal that thetag is currently within the range of a ping signal provided by aparticular node. The nodes may be configured to randomly, based on analgorithm, modify the ping signal strength. When the signal strength ismodified, some tags that were in range may no longer be in range, orsome tags that were previously in range may now be within range of theping signal. As tags come in and out of range, due to the changingsignal strength, the signal strength at the time may be used todetermine the distance that a tag is from a particular node. In somecases, if the distance is determined with respect to multiple nodes, aphysical location of the tag can be determined.

According to some example embodiments, standard operating power settings(describing standard fluctuations in power discussed below) may beutilized in a standard locating mode. However, in an active locate mode,when the location of a specific article is desired, an active locatepower setting may be utilized.

Additionally, or alternatively, a locating node may be configured to usemultilateration, hyperbolic positioning, time difference of arrival(TDOA), trilateration, triangulation, received signal strengthindication (RSSI), global positioning systems (GPS), any other locatingmechanisms, or combination thereof to support identifying the locationof a tag within a retail environment. According to some exampleembodiments, a locating node may operate in isolation to detect thepresence, and possibly the strength of a signal to determine when a tagis nearby. Locating nodes may take signal measurements and forward theinformation to, for example, the monitoring system manager 256 toanalyze the signal and determine a location. According to some exampleembodiments, locating nodes may be placed at strategic locations withinthe retail environment to support accurate locating of tags.

Due to interference that can occur in enclosed environments, such asretail stores, a signal power optimization procedure may be performed bythe monitoring system, for example, directed by the monitoring terminal,to minimize interference and determine optimum signal strength for pingsignals. In this regard, the signal strength of the various nodes may bemodified to determine settings where minimal interference and nodesignal overlap occurs.

FIG. 5 a illustrates an example retail environment 500, where amonitoring system has been installed and implemented, such as themonitoring system described in U.S. Provisional Patent Application61/244,320, filed Sep. 21, 2009, the content of which was incorporatedby reference in its entirety above, and U.S. Provisional PatentApplication No. 61/246,393, filed Sep. 28, 2009, the content of whichwas also incorporated by reference in its entirety above. The monitoringsystem may include tags, ping nodes, communication routing nodes, and anetwork coordinator and gateway node. The tags and nodes of themonitoring system may be configurable monitoring devices, such as thosedescribed in U.S. Provisional Patent Application 61/244,320 filed Sep.21, 2009, the content of which is hereby incorporated by reference inits entirety, and U.S. Provisional Patent Application No. 61/246,388,filed Sep. 28, 2009, the content of which is also incorporated byreference in its entirety.

The monitoring system may also include a monitoring terminal (notdepicted in FIG. 5 a) that provides a user interface to the monitoringsystem and provides control over the operations of the monitoringsystem. The monitoring terminal may be connected directly to themonitoring system as a peer, or the monitoring terminal may be connectedto the monitoring system via another network, such as the Internet. Insome example embodiments, the monitoring terminal may include a serverthat is configured to control the monitoring system on-site, where themonitoring system is installed. A user may interface with the monitoringsystem by establishing a connection between a remote device (e.g., apersonal computer) and the server. The server may be configured toperform predefined operations, and log information received from thetags and nodes. The server may be connected to a gateway or coordinatornode, and the server may communicate with tags and nodes via the gatewayor coordinator node.

As depicted in FIG. 5 a, the retail environment 500 houses a number ofping nodes (e.g., ping nodes 510, 520, 530, 540, 550, 560, and 570) andtags (e.g., tags 590 and 591). The ping nodes may be configured toprovide ping signals at regular (or irregular) intervals. The pingsignals may include information regarding the ping node that hastransmitted the signal. In this regard, a ping signal may provide aunique identifier of the ping node that is providing the signal.According to some example embodiments, the ping signal may also includetiming or time code information. In some embodiments, the ping signal isconsidered location information. For example, when a tag's location canbe determined based upon it's position relative to one or morestationary ping nodes, the corresponding ping signals, which have aunique identifier that identifies the broadcasting ping node, can beconsidered to include location information. The tag may log the locationand other information it extracts from the ping signal and/or report(i.e., send, upload, etc.) some or all of the information to a networkentity, such as monitoring system manager 256. After saving and/orreporting the information, the tag can engage its timer and enter asleep mode (as discussed above), and enter a sleep mode to conservepower while waiting for another triggering event (such as detection ofmovement or the timer expiring).

In some embodiments, the ping nodes are also configured to receivesignals and communications from other entities connected to themonitoring system such as tags, fixed nodes, or the monitoring terminal.In particular, the ping nodes may listen, possibly periodically, to thefixed nodes. As a result, communications with the ping nodes may occurdirectly between a tag and a ping node, or tags and ping nodes maycommunicate via the fixed nodes. In this regard, a fixed node may be anode that support network communications and may be stationary relativeto a given space, which may or may not be moving. For example, the givenspace could be the cabin of an elevator, airplane or cruise ship. Thelocation of the fixed nodes may be known, and as such, the fixed nodesmay be used as reference locations for identifying the locations of theping nodes or tags as described in further detail below.

FIG. 5 b depicts another representation of the retail environment 100which includes fixed nodes 515, 525, and 535. As described above, thefixed nodes may be a node that support network communications and may bestationary. In some example embodiments, the fixed nodes may be mainspowered. The fixed nodes may be configured to support communicationsbetween tags and the monitoring system, or nodes and the monitoringsystem. The fixed nodes may also be configured to support locationingwithin a monitoring system with respect to the ping nodes.

In this regard, the fixed nodes 515, 525, and 535 may be configured tolisten for ping signals or other communications from the ping nodes anddetermine the position of the ping nodes. While ping node may berelatively stationary, according to some example embodiments, ping nodesmay be positioned on movable shelving or displays. As such, when pingnodes are moved or when new ping nodes are introduced to theenvironment, the monitoring system may need to determine the location ofthe ping nodes. With the assistance of the fixed nodes, the locations ofthe ping nodes may be determined using various techniques including butnot limited to received signal strength indication (RSSI) techniques,angle of arrival techniques, time of arrival and time difference ofarrival techniques, and the like. Since the locations of the fixed nodesare known, the locations of the fixed nodes may be used as referencepoints for determining the locations of the fixed nodes.

A signaling and communications period 600 for a ping node, depicted inFIG. 6, may include a first portion 610 dedicated to transmittingrepeated ping signals 620, and a second portion 630 dedicated to supportnetwork communications. A ping node may be configured to repeat thesignaling and communications period 600 indefinitely, or until aninstruction is received by the ping node that causes the ping node tochange its operation.

Tags, such as tags 590 and 591, may be configured to determine and storethe identifier of the closest ping node. The tags may also be configuredto report the identity of the closest ping node to the monitoringterminal. According to some example embodiments, a tag may enter a “seekclosest ping node” state (i.e., seek_closest state), where the tag isconfigured to identify the ping node that is closest to the tag. When atag receives only one ping signal, the tag may determine that the pingnode providing the only received ping signal is the closest ping node.However, when a tag receives sufficiently strong ping signals from morethan one ping node, a locating procedure according to various exampleembodiments of the present invention may be triggered.

In accordance with various example embodiments, ping nodes may be placedwithin the given space, such as a retail environment, in a manner thatprovides sufficient ping signal coverage to the environment. In thisregard, a ping signal may have an associated signal strength, and thestrength of the signal may determine the range of the ping signal. Thestrength of a ping signal may fade as the distance between the ping nodeand the measurement point is increased. The range of a ping node may bedefined by a distance from the ping node where the signal strength is ata range threshold. Signals below the range threshold may still bereceived by tags, but the tags may be configured to ignore signalshaving signal strengths below the range threshold. The range thresholdmay define a circle (or sphere) with the ping node at the center of thecircle.

Since locating a tag may involve determining which ping node the tagshould be associated with, according to some example embodiments, it maybe beneficial to minimize the range overlap between ping nodes. In thisregard, the ping nodes may be set to have as large of a range aspossible, while also minimizing overlap. However, in some exampleembodiments, ping nodes may be associated with a given space comprisingor consisting of at least a portion of a particular display shelvingunit or rack. The ping node may be configured to define a range thatmerely encompasses the display, shelving unit, or rack, so as not toassociate tags with the ping node that are not placed on the display,shelving node, or rack. As such, pings nodes may be configured to ensurecoverage of some or all areas of the sales floor, or configured for aspecific purpose to provide coverage of, for example, a particulardisplay.

According to some example embodiments, a ping node signal strengthoptimization procedure may be undertaken by the monitoring system,possibly controlled by the monitoring terminal. In this regard, thesignal strengths of the various ping nodes may be modified to determineoptimal settings considering factors such as coverage, desired range fora particular ping, interference, range overlap, reflections, and thelike. Based on criteria such as these, an optimal settings for the pingnormal operating signal power levels may be determined.

FIG. 5 a shows the retail environment 500 with the placement of a numberof ping nodes and their associated ranges. Ping node 510 has been set toprovide a ping signal strength such that the range threshold is for pingnode 510 is reached at a range 511. Ping node 520, having a range 521may be a ping node that covers a larger area of the retail environment,such as a departmental area (e.g., the shoe department). Ping nodes 570and 580, having respective ranges 571 and 581, may also provide coverageto respective departmental areas. Ping nodes 530, 540, 550, and 560, andsmaller respective ranges 531, 541, 551, and 561, may provide coverageto small floor display, where it may be important to be able todetermine precisely which floor display a particular tagged product islocated on.

In some embodiments, it is noteworthy that, as depicted in FIG. 5 a, toprovide coverage to all or substantially all of the retail environment,the coverage areas of the ping nodes may overlap. In these overlappingregions, a tag may receive a sufficiently strong ping signal from morethan one ping node. As such, a locating procedure may be employed (whennecessary) to determine which ping node is closer to the tag.

In addition to the issues that can arise as a result of overlapping pingnode coverage, ping signal reflections may also create issues. In thisregard, since many retail environments are enclosed areas, signalreflections within the environments may create situations where pingsignals are received by nodes as reflected signals. As a result, a tagmay not be located within an overlap area as defined by the range of theping nodes, but the tag may still receive signals from multiple pingnodes due to reflections. Further, the receipt of reflected signals mayoccur dynamically, and not in a predicable pattern. For example, in aretail embodiment, the movement of customers, store personnel, and otherobjects can cause dynamically changing signal reflection issues.Non-uniform architecture of the shopping floor may also contribute toreflection issues. According to various example embodiments, somelocating procedures provided herein overcome the issues that arise fromping range overlap, as well as, the issues that can arise from signalreflections.

With reference to FIG. 5 a, tag 590 is located within range of ping node570. In an example scenario, tag 590 receives a ping signal from onlythe ping node 570. As such, when the tag 590 enters the seek_closestmode, the tag may detect and receive the ping signal associated withping node 570 and associate the location of tag 590 with ping node 570.The tag 590 may be configured to store the identifier of ping node 570,as provided in the ping signal, and report the association of the tag590 with the ping node 570 to the monitoring terminal via the monitoringsystem.

In another example scenario, tag 591 is located in an overlap regionbetween ping node 510 and ping node 580. Tag 591 receives ping signals,having sufficient signal strength, from both ping node 510 and 580.Since tag 591 has received ping signals from more than one ping node, alocating procedure may be undertaken to determine which ping node iscloser to the tag.

FIG. 7 illustrates the ping nodes 510 and 580, and the tag 591 inisolation from the rest of the retail environment 500 of FIG. 5 a, forillustration purposes. In accordance with various example embodiments,the tag 591, having transitioned into a seek_closest state may report tothe monitoring terminal that the tag 591 is currently receiving pingsignals from more than one ping node. The tag 591 may be configured toreport the identities of the ping nodes to the monitoring terminal. Inresponse, the monitoring terminal may generate a signal powermodification instruction, and transmit the signal power modificationinstruction to the identified ping nodes 510 and 580. According to someexample embodiments, rather than the monitoring terminal generating andtransmitting the signal power modification instruction, the affected tag591 may be configured to generate the signal power modificationinstruction and transmit the signal power modification instruction tothe identified ping nodes 510 and 580.

In response to receiving the signal power modification instruction, theping nodes 510 and 580 may be configured to reduce the power output,used to generate of their respective ping signals, to a minimumthreshold level. The minimum threshold level need not be the absoluteminimum value, but can be a relative value that is preprogrammed into atleast two nodes configured to implement this type of locationing. Forexample, the minimum threshold level could be 20 mW, 10 W, and/or anyother given value.

Referring now to FIG. 8, ping node 510 may reduce the power output,thereby reducing the ping signal to range 511 a. Similarly, ping node580 may also reduce its power output to the same value as ping node 510,and its ping signal will have the same range as ping node 510, as shownby range 581 a. It is noteworthy that ping nodes 510 and 580 initially(i.e., before the nodes received the signal power modificationinstructions) transmitted ping signals at different signal strengthsresulting in different starting ranges, possibly for coverage reasons.However, according to various example embodiments, the ping nodes, inresponse to receiving the signal power modification instruction, areconfigured to modify their respective signal strengths to an equal orsubstantially equal power level, or so their ranges are equal orsubstantially equal.

Upon reducing the signal strength based on a minimum threshold powerlevel, the ping nodes may be configured to begin a process ofincrementally increasing the signal strength of the ping signals. Theping nodes may be configured to perform periodic step increases in thesignal strength, thereby causing a period step increase in signal range.For example, the power level can increase such that the correspondingsignal range increase some distance (e.g., 2 inches, 2 feet, or anyother acceptable distance) every set amount of time (e.g., 0.2 seconds,2 seconds, 20 seconds, or any other acceptable amount of time). The pingnodes may include clocks that are synchronized with each other and/orthe broader monitoring system, and the ping nodes may use thesynchronized clocks to trigger the incremental changes to the signalstrength at regular intervals. Having lost the ping signals from theping nodes 510 and 580, due to the reduction of signal strength, the tag591 may be configured to detect or listen for the first ping signal thatis received after the signal power modification instruction is issued,or after the tag 591 reports the reception of multiple ping signals tothe monitoring terminal.

Referring to FIG. 8, after a first interval, the ping nodes 510 and 580may increase their respective ping signal strength by an equal orsubstantially equal amount. In this regard, the ping nodes 510 and 580may be configured to increase the signal strength to achieve the ranges511 b and 581 b, respectively. After a second interval, the ping nodes510 and 580 may again increase their respective ping signal strength byan equal or substantially equal amount. The ping nodes 510 and 580 maybe configured to increase the signal strength to achieve the ranges 511c and 581 c, respectively.

At range 511 c, the tag 591 may receive the ping signal from ping node510, but not from ping node 580. As a result, the tag 591 may beconfigured to determine that the tag 591 is closer to ping node 510. Thetag may store the identifier of ping node 510, and report the tag'sassociation to ping node 510 to the monitoring terminal and/or othernetwork entity.

Upon determining that the tag 591 is closer to ping node 510, theprocess of incrementing the power may cease. For example, in someembodiments, the power incrementing may cease in response to an endpower modification instruction issued by the tag 591, the monitoringterminal and/or other network entity, and received by the ping nodes 510and 580. The ping nodes 510 and 580 may be configured to return to theirrespective original or normal operating ranges 511 and 581,respectively.

As an alternative to decreasing the signal strength to an equal level,followed by subsequent increases in signal strength, a similar exampleprocedure may be undertaken where the signal strength is first increasedto a maximum threshold level. Subsequent to increasing the ping signalstrength to the maximum level, the signal strength of the involved pingnodes may be reduced periodically by incremental amounts until the nodereceives a signal from only one ping node. The last ping node that thetag receives a signal from may be identified as the closest ping node tothe tag.

As another alternative, according to some example embodiments, ratherthan initially reducing the ping signal strength to a minimum thresholdlevel or raising the ping signal strength to a maximum threshold level,the ping nodes involved in the locate procedure may reduce/raise thesignal strength to the current lowest/highest signal strength of theping nodes involved in the locate procedure. Based on whether the tagreceives a signal from a single ping after modifying the signalstrengths in this manner, the tag may be configured to determine whetherthe further procedure of incrementally increasing/decreasing the signalstrength of the ping nodes is required. In this manner, according tovarious example embodiments, the procedure for locating the closest pingnode may be expedited.

According to various example embodiments, in addition to determiningwhich pings nodes that a tag is receiving ping signal from, a tag may beconfigured to measure the signal strength of the ping signals. In someexample embodiments, information about signal strength and distances maybe acquire from the data included in a communication in consideration ofthe modulation that was used to transmit the data, and analysis of thedata may reveal information about signal strength and distanceinformation. According to various example embodiments, the tag mayconsider the signal strength of ping signals that the tag is receivingwhen determining which ping node is closer. For example, signalstrengths may fluctuate for a number of reasons (e.g., movement ofcustomers or products within a retail environment). As such, the tag maybe configured to determine the closest ping node by monitoring thesignal strengths over a period of time to, for example, determine anabsolute maximum signal strength or determine an average signalstrength, and identify the closest ping node based on these values.Further, according to some example embodiments, received signal strengthindication (RSSI) techniques may be used to assist in identifying aclosest ping node.

Additionally, in some embodiments an averaging scheme may be utilized inan attempt to normalize or remove incorrect closest ping nodedeterminations. In this regard, a tag may keep a running log and averageof signal strength values detected from a particular ping node or aclosest ping node. And if signals or communications are received thatare determined to be outside of a threshold range from the runningaverage, those deviations in signal strength may be disregarded as beinga result of a reflection or other unexplained occurrence. If a givennumber of signals or communications (e.g., 10) are received that areoutside the threshold, a change in the placement of ping nodes may haveoccurred, and the generation of a new running average may be triggered.Changes in this regard, may be the result of movement of the tag,movement of the ping nodes, or the introduction or removal of a pingnode to or from the environment. For example, the log and runningaverage can include the last 10, 100, 1000, or any other suitable numberof signals or communication values. In some embodiments, the number ofsuitable signal or communication values can be time dependent (e.g., arunning average can be made from each signal or communication receivedover the past hour, 10 hours, day, two days, week, or any other suitableperiod of time).

FIG. 9 illustrates an example method of the present invention that maybe implemented by a tag or a monitoring terminal. The example methodbegins at 900, where an indication that a tag is receiving ping signalsfrom multiple ping nodes may be received. A tag may receive thisindication internal to, for example, the processor of the tag, or themonitoring terminal may receive this indication. At 910, theidentification of each of the ping nodes that the tag is receiving pingsignals from may be determined. Further, at 920, a signal powermodification instruction may be generated. The signal power modificationinstruction may be addressed to the ping nodes identified at 910.

At 930, the signal power modification instruction may be transmitted toeach of the identified ping nodes. The identified ping nodes maysubsequently perform the operations of a power modification procedure at940, for example, as indicated in FIG. 10. Upon determining the closestping node, an indication of the identified ping node that is closest tothe tag may be received at 950. The tag may then be associated with theclosest node for location purposes.

FIG. 10 illustrates an example method of the present invention that maybe implemented by a ping node. The example method begins at 1000, wherea signal power modification instruction may be received. At 1010, thesignal strength may be lowered to a minimum threshold level (or raisedto a maximum threshold level). At 1020, the signal strength of the pingsignal may be periodically increased (or decreased) by an incrementalamount. Subsequent to performing one or more signal strengthmodifications, the ping node may return the signal strength to a normaloperating level at 1030.

FIGS. 11 and 12 illustrate the modification of normal operating levelsfor ping nodes. It is noteworthy that the ping nodes in FIGS. 11 and 12are stationary, but the normal operating levels of the ping nodes havechanged. In this regard, a monitoring system, via a tag, fixed node, orother ping nodes. As described above, the monitoring system may performan optimization procedure to determine the normal operating levels ofthe ping nodes. In this regard, the normal operating levels may beoptimized based on identified signal reflection issues, area coverage,and the like. According to some example embodiments, the normaloperating levels of the various ping nodes may be modified to achieveparticular goals with respect to, for example, locating a particular tagor group of tags. By dynamically changing the normal operating levels ofthe ping nodes, different gradients of coverage density may be generatedwithin a given space or portion thereof.

FIG. 11 depicts a number of ping nodes on the left side of the spacethat may be associated with aisles of a department store, which arepositioned in a uniform manner with associated ping nodes on theshelving or the like. The right side of the environment may berepresentative of a non-uniform floor space where a number of displaysare located close together. Tags located in the right side may be morelikely to interact with multiple ping nodes configured as shown in FIG.11.

In response to, for example a detected theft event, an inventory sweep,regular modification of normal operating levels, or the like, the normaloperating levels of the ping nodes may be modified resulting in adifferent gradient of coverage density within the environment. Forexample, as shown in FIG. 12, the normal operating levels of the pingnodes can be modified from those depicted in FIG. 11. In this regard,the coverage is increased on the right side of the space, resulting inincreased overlap in some ping node coverage. On the other hand, theleft side of the environment, coverage has been decreased such thatthere is little or no interaction between the respective ping signals.As a result, the right portion of the space, which included substantialoverlap in coverage in FIG. 11, now has little or no overlap incoverage.

To implement the modifications to the normal operating levels of theping nodes, a triggering event may occur. A triggering event may be, asdescribed above, a detected theft event, an inventory sweep, regularmodification of normal operating levels, or the like. In response to thetriggering event, the ping nodes may be communicated a normal operatinglevel modification message. In response to receiving the message, theping nodes may adjust the normal operating level accordingly.

FIGS. 9 and 10 illustrate flowcharts of example systems, methods, and/orcomputer program products according to example embodiments of theinvention. It will be understood that each operation of the flowcharts,and/or combinations of operations in the flowcharts, can be implementedby various means. Means for implementing the operations of theflowcharts, combinations of the operations in the flowchart, or otherfunctionality of example embodiments of the present invention describedherein may include hardware, and/or a computer program product includinga computer-readable storage medium (as opposed to a computer-readabletransmission medium which describes a propagating signal) having one ormore computer program code instructions, program instructions, orexecutable computer-readable program code instructions stored therein.In this regard, program code instructions may be stored on a memorydevice of an example apparatus (e.g., a tag, a monitoring terminal, aping node, etc.) and executed by a processor of the apparatus. As willbe appreciated, any such program code instructions may be loaded onto acomputer or other programmable apparatus from a computer-readablestorage medium to produce a particular machine, such that the particularmachine becomes a means for implementing the functions specified in theflowcharts' operations. These program code instructions may also bestored in a computer-readable storage medium that can direct a computer,a processor, or other programmable apparatus to function in a particularmanner to thereby generate a particular machine or particular article ofmanufacture. The instructions stored in the computer-readable storagemedium may produce an article of manufacture, where the article ofmanufacture becomes a means for implementing the functions specified inthe flowcharts' operation(s). The program code instructions may beretrieved from a computer-readable storage medium and loaded into acomputer, processor, or other programmable apparatus to configure thecomputer, processor, or other programmable apparatus to executeoperations to be performed on or by the computer, processor, or otherprogrammable apparatus. Retrieval, loading, and execution of the programcode instructions may be performed sequentially such that oneinstruction is retrieved, loaded, and executed at a time. In someexample embodiments, retrieval, loading and/or execution may beperformed in parallel such that multiple instructions are retrieved,loaded, and/or executed together or simultaneously. Execution of theprogram code instructions may produce a computer-implemented processsuch that the instructions executed by the computer, processor, or otherprogrammable apparatus provide operations for implementing the functionsspecified in the flowcharts' operations.

Accordingly, the execution of instructions associated with theoperations of the flowcharts by a processor, or storage of instructionsassociated with the blocks or operations of the flowcharts in acomputer-readable storage medium, support combinations of operations forperforming the specified functions. It will also be understood that oneor more operations of the flowcharts, and combinations of blocks oroperations in the flowcharts, may be implemented by special purposehardware-based computer systems and/or processors which perform thespecified functions (e.g., field programmable gate arrays (FPGAs),application specific integrated circuits (ASICs), or combinations ofspecial purpose hardware and program code instructions.

To support real-time locating of tags (and the products to which the tagis affixed), tags may be configured to provide locating signals (e.g.,status signals) that may be received, for example, by configurablemonitoring devices configured as locating nodes. Indications of thelocating signals may be provided to the monitoring system manager 256for analysis to determine the location of the tags within the retailenvironment. Upon determining the location of a tag, the monitoringsystem manager 256 may be configured to output the location of the tagon a map displayed via the user interface 258 as shown for example inFIG. 13.

Returning to the discussion of FIG. 3, in addition to simply outputtingthe location of the tag to the user interface 258, the monitoring systemmanager 256 may be configured to consider the location information of atag with respect to defined rules, alarm conditions, and alarmresponses. In this regard, zones of interest within a retail environmentmay be defined, and when the monitoring system manager 256 determinesthat a tag has entered a zone of interest security functionality, suchas an alarm response, may be implemented. For example, store personnelmay wish to define an alarm condition when products enter the restroomarea 150 of FIG. 3. As such, a zone of interest may be defined for therestroom area 150. Accordingly, when the monitoring system manager 256determines that a tag has entered the restroom area, an alarm signal ormessage may be generated, and an alarm response may be implementedsounding an alarm. The alarm signal or message may be sent to the tag,and an alarm on the tag may be activated. Additionally or alternatively,a notification may be provided to store personnel, via for example, amobile communications terminal and/or a remote alarm may be activated.Further, zones of interest may be defined with respect a variety ofareas within the retail environment (e.g., the stock room, point ofsale, fitting room, etc.). Additionally, zone-based functionalityprofiles can be used by the tags. Like the more generic functionalityprofiles discussed above, zone-based functionality profiles can bestored and accessed locally within the tag and/or at a network entity,such as monitoring system manager 256. The zone-based functionalityprofile can include instructions and other commands that are specific toa particular location zone of the given space.

For example, a location zone of interest may also be associated withadditional parameters, such as a time interval or duration, which may beincluded in the tag's zone-based functionality profile for the locationzone. A customer, for example, may be permitted to bring an article witha tag into the fitting room 130, but only for a threshold duration oftime. Store personnel may, for example, wish to set a thirty minuteduration for the fitting room. Accordingly, the monitoring systemmanager 256 may be configured to define a duration of time, such asthirty minutes, for a zone of interest. The monitoring system manager256 may be configured to implement a timer based on the thresholdduration. The timer may continue to run while the tag is located withinthe zone of interest and, when the time reaches the threshold, an eventsignal can be generated. The event signal, for example, may include analarm instruction and be based on the zone-based functionality profile.The alarm instruction can be executed, causing an alarm signal or alarmmessage (e.g., an automatically generated e-mail to a user device, etc.)to be generated and transmitted by and/or to the monitoring systemmanager 256 and/or tag. In some embodiments, the event signal caninclude other types of instructions and/or other data may not include orinitiate an alarm signal. For example, the event signal can comprisedata that indicates the tag's, includes tag location information, causesthe tag's or other device's light(s) to illuminate, cause anothernetwork device (such as a closed circuit video camera) to flag data asrelevant, and/or any other type of data that can cause any other type ofdesired response. For example, the event signal can cause the monitoringsystem manager 256 to determine that the tag has moved out of the zoneof interest (such as a fitting room) and, in response, the monitoringsystem manager 256 and/or the tag may be configured to reset the timer.In this manner, the monitoring system can implement a delay beforealarming; thereby giving the customer time to try on an article ofclothing before determining that a suspicious event may have occurred orbe occurring.

Locating a tag may also allow for tracking the movement of a tag and theassociated product through the store. Tracking the movement of theproduct may provide inventory, security, and marketing functionality.With respect to security functionality, it has been determined that manyexperienced shoplifters move about a store in a particular manner. Basedon the location information determined for a tag, the movement of aproduct may be tracked by the monitoring system manager 256 and amovement profile may be generated and compared to suspicious activitymovement profiles. If a match is identified, a notification may beprovided to a manager, security guard, or the like via a mobilecommunications terminal to investigate the situation. Further, accordingto some example embodiments, the monitoring system manager 256 may haveconfigured other tags, or may signal (e.g., send alarm instructions to)other tags on nearby devices to alarm when a match is identified to, forexample, assist in locating the shoplifter. Adjacent tags could thenprovide an alarming pattern that “follows” a would-be shoplifter aroundor through the retail environment.

Additionally, the monitoring system manager 256 and/or other networkentity may be configured to interface, via a network connection or thelike, with customer information terminals 195 to support securityfunctionality. Customer information terminals 195 may be computingdevices including a display and audio output capabilities (e.g.,speaker, speaker driver, etc.). A customer information terminal may belocated at strategic security locations such as exits and entrances. Themonitoring system manager 256 may be configured to interface with thecustomer information terminals 195, via for example a networkconnection, to provide output to customers and would-be shoplifters. Forexample, a customer information terminal and a movable video camera maybe located at the exit of a retail environment. The moveable videocamera may be controlled by the monitoring system manager 256. When themonitoring system manager 256 determines that a tag has moved into azone of interest defined near the exit, the movable camera may move tocapture the image of the individual carrying the tag (and the associatedproduct). The video captured by the camera may be displayed on thecustomer information terminal to indicate to the shoplifter that theyare being recorded and thereby have a deterrent effect. In addition, insome embodiments, the store's background music system may be quieted ormuted and/or other noise overcoming strategies may be implemented, inresponse to the monitoring system 256 determining that a tag has movedinto a zone of interest and/or entered an alarm state.

In a similar application involving customer information terminals, tagsentering a store may be considered. For example, if the monitoringsystem manager 256 determines that a tag has entered the store throughthe front entrance, the monitoring system manager 256 may be configuredto cause the customer information terminal to either visually and/oraudibly direct the customer to the customer service desk for productreturns.

In addition to configurable monitoring devices being configured as EASgate nodes, configurable monitoring devices may also be configured tooperate as gate nodes via the locating functionality described above orbased on a determination that a tag is within range of a gate node'sping signal. In some example embodiments, a gate node may detect theproximity of a tag by receiving communications from the tag in responseto a ping signal provided by the gate node. To avoid situations where agate node detects the proximity of a tag that is properly within theretail environment, and is not located so close to the exit so as toindicate that the attached article is being stolen, guard nodes may beimplemented. The guard nodes may be located near an exit and may beconfigured to prevent tags within the store from improperly associatingthemselves to the gate nodes and causing erroneous alarming.

A gate node may be connected to mains power, and may include a batteryto support operation when mains power is lost. The gate node maytransmit regular ping signals, which include the gate node's uniqueidentifier, and listen for responses from tags that are within range. Ifa tag detects that the strongest ping signal that the tag is receivingis from a gate node, the tag may transmit a message including the tag'sunique identifier to the gate node and the tag may enter a first alarmmode. In this regard, a tag may maintain a list of identifiers for gatenodes to determine when a signal is being detected from a gate node.

In the first alarm mode, the tag may be configured to emit an audiblechirp every second (or other predetermined time period), providing adeterrent indication to an individual holding the article to which thetag is affixed. While in the first alarm mode, the tag may continue tolisten for ping signals from other nodes, and if a ping signal from anon-gate node becomes the strongest ping signal detected by the tag, thetag may transfer from the first alarm mode to a normal mode (e.g., sincethe tag has apparently moved away from the gate node and the exit).However, if the strongest received ping signal continues to be thesignal from the gate node, and the received signal strength passes apredefined gate node signal strength threshold, the tag may transferinto a second alarm mode. In the second alarm mode, the tag may beconfigured to alarm continuously. Again, the tag may continue to listenfor ping signals from other nodes, and if a ping signal from a non-gatenode becomes the strongest ping signal detected by the tag, the tag maytransfer from the second alarm mode to the first alarm mode or a normalmode (e.g., since the tag has apparently moved away from the gate nodeand the exit).

As mentioned above, tag tracking may also provide marketing benefits.Movement of tags associated with particular products may logged by themonitoring system manager 256 over a period time, and the monitoringsystem manager 256 may be configured identify customer trends byaggregating the data. Using the trends, product layout within a storemay be modified to increase sales. The customer trends may revealpurchasing patterns, customer traffic patterns, in-store dead-spots, andthe like, which may not have otherwise been identified. Further,information regarding the effects of moving product display racks andassociated products within the store may be determined based on themovement of customers and the sales of the associated products.

With respect to additional marketing functionality, since the locationof a product can be determined, the monitoring system and the monitoringsystem manager 256 may be configured to make suggestions to customersfor purchasing other products. For example, movement of a tag associatedwith a dress shirt may be detected, and the movement may be tracked to asales area for neck ties. The monitoring system manager 256 may beconfigured to consult a database to suggest a neck tie that matches theshirt, based on attribute information associated with the tag affixed toand associated with the shirt. To implement the suggestion procedure,the monitoring system manager 256 may interface with a customerinformation terminal 195 located near the neck tie retail area.

Example marketing compliance applications and functionality may also beimplemented by the monitoring system. In this regard, some retail storesmay have requirements for how the store should be set (i.e., whereparticular products should be located within the store). A floor plan orset design may be followed for setting the store. To ensure that a storecomplies with a given set design, the location of tags may be queried.Tags associated with particular products may be checked against astored, electronic set design to ensure that the products are located inthe correct locations within the store. For example, the location of thewinter sweaters within the store may be queried, to determine if thewinter sweaters have been located on a table at the entrance of thestore in accordance with a set design. The results of the query may becompared to the set design to determine whether the store complies inthis regard.

Another example marketing application may be automatic pricemodification. In this regard, a tag may be configured to change theprice of a product (or suggest the change of a price for the product)based on various factors. A tag may be configured to implement a timerand determine, for example, a “time on the sales floor” value. If thetime on the sales floor value reaches a threshold level, the price forthe article that the tag is associated with may be modified. To supportthis functionality, according to some example embodiments, when the tagis commissioned or is placed on the sales floor, a time and datethreshold for the article may be defined. For example, a thirty daythreshold may be set. When thirty days has passed, as determined by thetag or the monitoring terminal, the tag may be configured to, or themonitoring terminal may direct the tag to, modify or suggestmodification of the price of the article. Additionally, oralternatively, the tag may alarm when the threshold is reachedindicating to sales personnel that the tag should be moved to theclearance rack. The price may also be modified based on the sales ofrelated products. For example, if sales of a particular product havebeen increasing, the price could be raised.

Another example marketing application may involve a tag being associatedwith, or assigned to, a specific customer (customer tag). In thisregard, the customer tag may be permanently assigned to a customer(e.g., the customer leaves the retail store with the tag), or the tagmay be temporarily assigned to a customer upon visiting the retail store(e.g., the customer returns the tag upon leaving the store). The tagand/or the monitoring system may be configured to store profileinformation about the customer in association with the tag. In thisregard, the customer's profile information may be stored on the tag orat the monitoring terminal. In some example embodiments, the tag may beconfigured to wirelessly interface with a cell phone to retrieve profileinformation. The profile information may include the customer's name,age, gender, home address, phone numbers, credit card numbers, creditinformation, purchasing preferences, and the like.

The profile information may also include information indicative of acustomer loyalty level. In this regard, based on the customer loyaltylevel, various loyalty program features may or may not be available tothe customer. For example, tags associated with a customer having aparticular customer loyalty level may be configured to allow a customerto use the self check out lane at a retail store, open a display casewithout the assistance of store personnel, open a security device thatprotects a product, purchase a product using pre-stored credit cardinformation, de-commission security tags associated with a purchasedproduct, and the like.

The customer tag may also be configured to provide for tracking andpositioning the customer in the store. Further, the customer tag may beconfigured to receive, for example via the monitoring system, a productlist (e.g., a grocery list), and the customer tag may assist thecustomer in locating the products on the list. The product list may beprovided to the monitoring system via, for example, the monitoringsystem's internet connection. In this regards, the product list may havebeen created remotely from, e.g., the user's home computer running a webapplication, cellular phone, and/or any other remote device. Forexample, the monitoring system can provide real-time inventory dataassociated with a particular store and the remote device can enable theuser to reserve one or more particular products for pick-up and/orpurchase at the store.

According to various example embodiments, a tag, such as a tagconfigured for security functionality, marketing functionality,inventory functionality, or as a key (e.g., a manager's key) may beconfigured to provide for assisting an individual with locating anothertag and the associated product. In this regard, a locator tag, in thepossession of an individual attempting to locate a target tag, may beconfigured to provide a user with an indication of the where the targettag is located or how far the target tag is away from the locator tag.The locating tag and/or the target tag may be configured to provideaudible and/or visual feedback to the user to indicate the location ofthe target tag. For example, the locating tag and/or the target tag maybe configured to output audible beeps or clicks (similar to the sound ofa Geiger counter), the frequency of which may increase as the locatingtag moves closer to the target tag. The output may be based on locatingthat is performed via the ping nodes described above, or via signalstrength detection directly between the locating tag and the target tag.

As mentioned above, tag location assistance functionality, such as theGeiger counter-type functionality described above may be implemented ina number of applications. In another example, a locator tag, such as atag configured as a manager's key, may be used to locate tags that havereached a threshold battery charge level. A tag with a low batterylevel, where the tag includes battery monitoring circuitry (e.g., via aprocessor) may be configured to alarm to indicate the low batterycondition. Additionally, a tag with low battery level may be configuredto provide a wireless signal indicating the low battery condition. Thewireless signal may be detected by the locator tag and the locator tagmay be configured to provide an indication of the location of the lowbattery level to a user of the locator tag. According to some exampleembodiments, tags near a low battery level tag may be configured torelay the low battery level indication via a wireless signal toneighboring tags, and the neighboring tags may report the low batterypower condition to provide for locating the low battery level tag, evenafter the low battery level tag can no longer communicate.

With respect to inventory applications, the monitoring system manager256 may be configured to track inventory generally, as well as track thelocation of inventory via tags. The monitoring system manager 256 may beconfigured to track inventory by monitoring and logging status signalsprovided by the tags, in addition to commissioning and decommissioningactivities.

The monitoring system manager 256 may also assist in locating particularinventory to, for example, assist in a sale. The monitoring systemmanager 256 may be configured to receive requests for a particularproduct (e.g., brown slacks, waist size 32, in-seam length 30) andcommunicate with tags that meet the criteria of the request to cause thetags to alarm. An alarm in this regard, may be a subtle, soft audioalarm that would assist a sales person and a customer in locating thedesired product.

Another example inventory application may involve the monitoringsystem's interaction with totes. A tote may be a shipping container,such as a plastic shipping container, that can hold smaller, and oftenhigher value, products, such as pharmaceuticals, makeup, batteries,film, jewelry, and the like. Totes may be loaded at a warehouse, oranother store, and shipped to a destination store. A tote may include amechanical locking mechanism that requires, for example, a magnetic keyor mechanical interaction with a key, to open the tote and access theproducts inside the tote. In some example embodiments, a tote may alsoinclude a configurable monitoring device configured as a tote tag.

A tote tag may be used for locating the tote, similar to the mannersdescribed above. A tote tag may also be configured to detect thepresence of tags, and associated products within the tote. In thismanner, a tote tag may operate similar to a node, with respect to thetags stored within the tote. In some embodiments, the tote tag maymaintain an inventory of the products within the tote by virtue ofcommunication with each respective tagged product in the tote and theextraction and/or storage of product related information associated witheach respective tag. As the tote moves from the warehouse to adestination store, the inventory information may be verified at bothlocations to ensure that the contents of the tote have not been tamperedwith or stolen.

The tote tag may also interface with a key, such as a manager's key. Inthis regard, the key may be enabled to deactivate security functionalityof the tote tag, such as alarming. The tote tag may be configured toalarm if an attempt is made to open the tote without the key or with anunapproved key. The tote tag may also alarm if communication is lostwith the tag of one or more of the tagged products within the tote. Akey may be configured to interface with the tote tag, either directly orthrough the monitoring system, to deactivate, or activate, the totetag's alarming functionality. The monitoring system, or the tote tag maybe configured to manage access to the contents of the tote by, forexample, maintaining a list identifying the particular keys or the typesof keys (e.g., high level manager's key) that have been enabled to openthe tote. In the event that an unapproved key is used, or is attemptedto be used, for opening a tote, the tote tag may alarm.

Based on the forgoing, FIG. 14 illustrates an example method formanaging configurable monitoring devices in accordance with variousexample embodiments of the present invention that may be implemented bythe monitoring system manager 256. At 1400, configuration informationfor a configurable monitoring device may be generated that defines arole for the target configurable monitoring device. Specific parameterssuch as rules, alarming conditions, alarming responses, attributeinformation, and the like may be defined and included in theconfiguration information. At 1410, the configuration information may beprovided to a target configurable monitoring device via, for example, awireless network connection. The target configurable monitoring devicemay receive and store the configuration information and subsequentlyoperate within the role defined by the configuration information. If theconfiguration information defines the role of a node or a gateway,role-based communications may be received from, and transmitted to, thenode or gateway during the operation of the configurable monitoringdevice as a node or gateway.

If the configuration information defines the role of a tag, a commissionsignal may subsequently be provided to commission the tag at 1430.Subsequently, role-based communications may be received from, andtransmitted to, the tag at 1440 during the operation of the configurablemonitoring device as a tag. The tag may later be provided a decommissionsignal to decommission the tag 1450. Once decommissioned, the tag mayawait re-commissioning at 1430 by providing another commission signal.

FIGS. 13 and 15-17 illustrate example windows for displaying aspects ofa user interface that may be implemented on a monitoring terminal. FIG.13 illustrates an example window 1300 displaying a renderedrepresentation of a monitoring system. The tag map 1310 illustrates anexample sales floor for a retail environment. The tag map 1310 includeslocation-based representations of nodes (referred to as “hubs”) that arepositioned at various locations throughout the sales floor. The nodesare uniquely identified by a label (e.g., “Hub 14”) followed by anassociated tag count in parentheses, indicating the number of nearbytags (or tags within range of the signals (e.g., ping signals) beingprovided by the nodes. When the monitoring terminal determines, based oncommunications from the tags or the nodes, that a tag has moved, suchthat the tag is disassociated with a first node and newly associatedwith a second node, the tag count may be decremented at first node andincremented at the second node. The tag map 1310 also depicts POS nodes(e.g., “Pos2”, “Pos 3”, etc.). Near the entry area a gate node, “Gate1”,is depicted which is configured to protect the entry/exit area. The tagmap 1310 also includes a gateway node, “Root0” configured to interfacewith an external network, to which the monitoring terminal may beconnected.

The example window 1300 also includes a tag tree 1320. The tag tree 1320includes a listing of the nodes that are members of the monitoringsystem. A node that has tags within range, such as Hub16, may beexpanded to display entries for each tag that is currently within rangeof, or otherwise associated with the node. As tags move form node tonode, the tag tree 1320 may be updated to show the current associationsbetween the tags and the nodes. The tag tree 1320 also includes a statuslegend 1321 for describing the status of the tags or nodes. In thisregard, the monitoring terminal may be configured to highlight, forexample, an alarming tag red, an unresponsive tag purple, and a lowbattery tag yellow, or some other color/highlighting scheme may beemployed.

The example window 1300 also includes an event log 1330. The informationdepicted in the event log may be linked to the currently selected itemin the tag tree 1320. As such, event information for the selected tagmay be displayed. A time stamp may be associated with each event.Example events may include tag movement between node events, alarmevents, failed communications events, tamper events, low battery events,etc.

FIG. 15 illustrates an example tag information window 1500 for attributeinformation associated with a tag or node. The example tag informationwindow 1500 depicts attribute information for a tag. An image 1510 of anarticle to which the associated tag is affixed may be provided in theexample tag information window 1500. Further, additional attributeinformation may be provided in the tabular area 1520, such as the tagaddress, the current battery level, the currently associated hub, adescription of the affixed article, a stock-keeping unit (SKU) value,the time/date of the last report from the tag, the time/date of the lasttransition between nodes for the tag, the time/date of the lastcommission of the tag, the time/date of the last decommission of thetag, and the like.

FIG. 16 illustrates an example hub information window 1600. The hubinformation window 1600 may include a tabular area 1610 that includesinformation about the hub (or node). Example hub attribute informationmay include the hub address, the hub label or description, the batterylevel for the hub, the current number of associated tags, the date/timethat the hub last reported, for example, to the monitoring terminal, andthe like.

FIG. 17 illustrates an example battery level window 1700 for a tag. Thebattery level window may include a graphical representation of the pastand current battery level on a line graph. The graph may be providedwith respect to voltage on the y-axis, and time on the x-axis. Athreshold battery level 1730 may also be included on the graph, whichmay indicate the battery level that would place the tag in a low batterystatus.

Many of applications and functionality described herein utilize wirelesscommunications between the monitoring terminal 62 and the configurablemonitoring devices. In addition to, or in lieu of, communicating withindividual tags via this air interface, the communications interface 252of the monitoring terminal 62 may communicate with a separate bridgedevice to forward and receive information and data to and fromconfigurable monitoring devices. The bridge device may operateunilaterally or in conjunction with the monitoring terminal 62 to manageconfigurable monitoring devices. The bridge device, which may be ahand-held scanner-type device, can be configured to operate in one oftwo communication modes to interface with tags affixed to retailproducts for security, inventory, and other purposes. In a firstcommunication mode, the bridge device is configured to communicate withtags that are configured for RFID type communications. For example, thetags and the bridge device may be configured to communicate inaccordance with the Generation II Ultra High Frequency (UHF) RFIDstandards. In a second communication mode, the bridge device isconfigured to communicate with tags using a protocol built on the IEEE802.15.4 standard, such as ZigBee or a proprietary protocol built onIEEE 802.15.4. To support the dual modes of communication, the bridgedevice may include a transmitter/receiver and an antenna configured tosupport IEEE 802.15.4, as well as, a modulator/demodulator, and possiblya separate antenna, to support RFID communications. According to someexample embodiments, the bridge device may include a configurablemonitoring device configured to operate a bridge device. Via seamlesstransition between the two communications modes, a single, possiblyhand-held, bridge device can operate as a tag reader, and may be used tocommunicate with disparate types of tags. Communications with the tagsmay be performed for a variety of reasons, such as for countinginventory, price checking, tag firmware upgrades, tag encoding, and thelike.

The flexible nature of the configurable monitoring device and themonitoring system of embodiments of the present invention may enabledynamic configuration of configurable monitoring devices within anetwork to introduce robust capabilities for providing services andfunctionality and, for providing updates to existing capabilities withupdated configuration information. Embodiments of the present inventionmay be implemented by various means, such as hardware, firmware,processor, circuitry and/or other device associated with execution ofsoftware including one or more computer program instructions. Forexample, one or more of the procedures or activities described above maybe embodied by computer program instructions. In this regard, thecomputer program instructions which embody the procedures or activitiesdescribed above may be stored by a memory device of an apparatusemploying an embodiment of the present invention and executed by aprocessor in the apparatus. As will be appreciated, any such computerprogram instructions may be loaded onto a computer or other programmableapparatus (e.g., hardware) to produce a machine, such that the resultingcomputer or other programmable apparatus embody means for implementingthe functions specified in the corresponding procedure or activity.These computer program instructions may also be stored in acomputer-readable storage memory (as opposed to a computer-readabletransmission medium such as a carrier wave or electromagnetic signal)that may direct a computer or other programmable apparatus to functionin a particular manner, such that the instructions stored in thecomputer-readable memory produce an article of manufacture the executionof which implements the function specified in the correspondingprocedure or activity. The computer program instructions may also beloaded onto a computer or other programmable apparatus to cause a seriesof operational steps to be performed on the computer or otherprogrammable apparatus to produce a computer-implemented process suchthat the instructions which execute on the computer or otherprogrammable apparatus provide steps for implementing the functionsspecified in the corresponding procedure or activity described above.

Also, the terms “substantially,” “about,” “approximately” or the like asused herein are intended to reflect variances in a value or relationshipthat may be due to various factors such as the effects of environmentalconditions, common error tolerances, or the like. It should further beunderstood that although some values or other relationships may beexpressed herein without a modifier, these values or other relationshipsmay also be exact or may include a degree of variation due to variousfactors such as the effects of environmental conditions, common errortolerances, or the like.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of this disclosure. Moreover,although the foregoing descriptions and the associated drawings describeexemplary embodiments in the context of certain exemplary combinationsof elements and/or functions, it should be appreciated that differentcombinations of elements and/or functions may be provided by alternativeembodiments without departing from the scope of this disclosure. In thisregard, for example, different combinations of elements and/or functionsthan those explicitly described above are also contemplated as may beset forth in some of this disclosure. Although specific terms areemployed herein, they are used in a generic and descriptive sense onlyand not for purposes of limitation.

1-41. (canceled)
 42. A system for tracking articles comprising: a firstping node configured to: transmit a first ping signal having a firstping signal strength; receive a first signal power modificationinstruction; and in response to receiving the first signal powermodification instruction, transmit a location signal having a locationsignal strength that is different than the first ping signal strength; asecond ping node configured to transmit a second ping signal having asecond ping signal strength; and a monitoring device configured forattachment to an article, the monitoring device comprising a processor,the processor configured to: receive the first ping signal from thefirst ping node; receive the second ping signal from the second pingnode; receive the location signal from the first ping node; anddetermine location information relating to the monitoring device basedat least in part on the location signal.
 43. (canceled)
 44. The systemof 42, wherein the processor is further configured to: send the firstsignal power modification instruction for instructing the first pingnode to lower the first ping signal strength to a minimum threshold andtransmit the location signal one or more times starting at the minimumthreshold and increasing incrementally to the location signal strength;and send a second signal power modification instruction for instructingthe second ping node to lower the second ping signal strength to theminimum threshold and transmit a second location signal one or moretimes starting at the minimum threshold and increasing incrementally.45. The system of claim 42, wherein the processor is further configuredto: send the first signal power modification instruction for instructingthe first ping node raise the first ping signal strength to a maximumthreshold and transmit the location signal one or more times starting atthe maximum threshold and decreasing incrementally; and send a secondsignal power modification instruction for instructing the second pingnode to increase the second ping signal strength to the maximumthreshold and transmit a second location signal one or more timesstarting at the maximum threshold and decreasing incrementally.
 46. Thesystem of claim 42, wherein: the first ping node is configured totransmit the first ping signal at a first range, wherein the first rangeincludes a first retail shelving unit; and the second ping node isconfigured to transmit the second ping signal at a second range, whereinthe second range includes a second retail shelving unit.
 47. The systemof claim 46, wherein the first range and the second range are configuredto be consistent with a coordinated, multi-ping node gradient ofcoverage density.
 48. A method for tracking articles using a monitoringdevice affixed to an article comprising: receiving, from a first pingnode, a first ping signal having a first ping signal strength;receiving, from a second ping node, a second ping signal having a secondping signal strength; and receiving, from the first ping node, alocation signal having a location signal strength that is different thanthe first ping signal strength; and determining location informationrelating to the article based at least in part on the location signal.49. (canceled)
 50. The method of claim 48 further comprising: sending afirst signal power modification instruction for instructing the firstping node to lower the first ping signal strength to a minimum thresholdand transmit the location signal one or more times starting at theminimum threshold and increasing incrementally to the location signalstrength; sending a second signal power modification instruction forinstructing the second ping node to lower the second ping signalstrength to the minimum threshold and transmit a second location signalone or more times starting at the minimum threshold and increasingincrementally.
 51. The method of claim 48 further comprising: sending afirst signal power modification instruction for instructing the firstping node to increase the first ping signal strength to a maximumthreshold and transmit the location signal one or more times starting atthe maximum threshold and decreasing incrementally to the locationsignal strength; sending a second signal power modification instructionfor instructing the second ping node to increase the second ping signalstrength to a maximum threshold and transmit a second location signalone or more times starting at the maximum threshold and decreasingincrementally.
 52. The method of claim 48 further comprising:transmitting, from the first ping node, the first ping signal within afirst range, wherein the first range includes a first retail shelvingunit; and transmitting, from the second ping node, the second pingsignal within a second range, wherein the second range includes a secondretail shelving unit.
 53. The method of claim 52, further comprising thefirst ping node and the second ping node receiving configurationinformation that causes the first range and the second range to beconsistent with a coordinated, multi-ping node gradient of coveragedensity.
 54. A computer program product for position tracking of anarticle, the computer program product comprising: a computer-readablestorage medium having computer readable program code embodied in saidmedium, said computer-readable program code to: receive, from a firstping node, a first ping signal having a first ping signal strength;receive, from a second ping node, a second ping signal having a secondping signal strength; receive, from the first ping node, a locationsignal having a location signal strength that is different than thefirst ping signal strength; attach, using an attachment mechanism, to anarticle; and determine location information relating to the articlebased at least in part on the location signal.
 55. The acomputer-readable storage medium of claim 54 further comprisingcomputer-readable program code to: send a first signal powermodification instruction for instructing the first ping node to lowerthe first ping signal strength to a minimum threshold and transmit thelocation signal one or more times starting at the minimum threshold andincreasing incrementally to the location signal strength; send a secondsignal power modification instruction for instructing the second pingnode to lower the second ping signal strength to the minimum thresholdand transmit a second location signal one or more times starting at theminimum threshold and increasing incrementally.
 56. The acomputer-readable storage medium of claim 54 further comprisingcomputer-readable program code to: send a first signal powermodification instruction for instructing the first ping node to increasethe first ping signal strength to a maximum threshold and transmit thelocation signal one or more times starting at the maximum threshold anddecreasing incrementally to the location signal strength; send a secondsignal power modification instruction for instructing the second pingnode to increase the second ping signal strength to a maximum thresholdand transmit a second location signal one or more times starting at themaximum threshold and decreasing incrementally.
 57. The system of claim42, further comprising a network entity that is configured to transmitthe first signal power modification instruction.
 58. The system of claim57, wherein the network entity is configured to transmit the firstsignal power modification instruction in response to the network entitydetermining a triggering event has occurred.
 59. The system of claim 57,wherein the network entity is further configured to transmit a secondsignal power modification instruction.
 60. The system of claim 59,wherein the network entity is configured to transmit the second signalpower modification instruction in response to the network entitydetermining a triggering event has occurred.
 61. The system of claim 59,wherein the first signal power modification instruction is the same asthe second signal power modification instruction.
 62. The system ofclaim 57, wherein the network entity is configured to determineefficient pathways for communicating messages from the monitoring deviceto various entities within a network.
 63. The method of claim 48 furthercomprising transmitting a first signal power modification instructionfrom a network entity, wherein the first signal power modificationcauses the first ping node to transmit the location signal.
 64. Themethod of claim 63, wherein transmitting the first signal powermodification instruction occurs in response to the network entitydetermining a triggering event has occurred.
 65. The method of claim 63further comprising transmitting a second signal power modificationinstruction from the network entity.
 66. The method of claim 65, whereintransmitting the second signal power modification instruction occurs inresponse to the network entity determining a triggering event hasoccurred.
 67. The method of claim 65, wherein transmitting the firstsignal power modification instruction and transmitting the second signalpower modification instruction includes transmitting a singleinstruction that is received by both the first ping node and the secondping node.